annotate lisp/obsolete.el @ 5255:b5611afbcc76

Support process plists, for greater GNU compatibility. src/ChangeLog addition: 2010-09-02 Aidan Kehoe <kehoea@parhasard.net> * process.c (process_getprop, process_putprop, process_remprop) (process_plist, process_setplist, reinit_process_early): Add functions to modify a process's property list. * process-slots.h (MARKED_SLOT): Add a plist slot. * fns.c (Fobject_setplist): New function, analogous to #'setplist, but more general. Update the documentation in the other plist functions to reflect that processes now have property lists. * emacs.c (main_1): Call reinit_process_early(), now processes have plist methods that need to be initialised. * symbols.c (reinit_symbol_objects_early): Fsetplist is the named setplist method for symbols. lisp/ChangeLog addition: 2010-09-02 Aidan Kehoe <kehoea@parhasard.net> * obsolete.el (process-get): Make #'process-get, #'process-put, #'process-plist, #'set-process-plist available as aliases to the more general functions #'get, #'put, #'object-plist, #'object-setplist, for GNU compatibility.
author Aidan Kehoe <kehoea@parhasard.net>
date Thu, 02 Sep 2010 12:23:11 +0100
parents 7d06a8bf47d2
children d1b17a33450b 308d34e9f07d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 ;;; obsolete.el --- obsoleteness support
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 ;; Copyright (C) 1985-1994, 1997 Free Software Foundation, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 ;; Copyright (C) 1994, 1995 Amdahl Corporation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 ;; Copyright (C) 1995 Sun Microsystems.
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
6 ;; Copyright (C) 2002, 2004, 2010 Ben Wing.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 ;; Maintainer: XEmacs Development Team
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 ;; Keywords: internal, dumped
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 ;; This file is part of XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 ;; XEmacs is free software; you can redistribute it and/or modify it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 ;; under the terms of the GNU General Public License as published by
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 ;; the Free Software Foundation; either version 2, or (at your option)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 ;; any later version.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 ;; XEmacs is distributed in the hope that it will be useful, but
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 ;; WITHOUT ANY WARRANTY; without even the implied warranty of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 ;; General Public License for more details.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 ;; You should have received a copy of the GNU General Public License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 ;; along with XEmacs; see the file COPYING. If not, write to the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 ;; Free Software Foundation, 59 Temple Place - Suite 330,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 ;; Boston, MA 02111-1307, USA.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 ;;; Synched up with: Not in FSF.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 ;;; Commentary:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 ;; This file is dumped with XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 ;; The obsoleteness support used to be scattered throughout various
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 ;; source files. We put the stuff in one place to remove the junkiness
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 ;; from other source files and to facilitate creating/updating things
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 ;; like sysdep.el.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39 ;;; Code:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 (defsubst define-obsolete-function-alias (oldfun newfun)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 "Define OLDFUN as an obsolete alias for function NEWFUN.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 as obsolete."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 (define-function oldfun newfun)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 (make-obsolete oldfun newfun))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 (defsubst define-compatible-function-alias (oldfun newfun)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 "Define OLDFUN as a compatible alias for function NEWFUN.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 as provided for compatibility only."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 (define-function oldfun newfun)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 (make-compatible oldfun newfun))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 (defsubst define-obsolete-variable-alias (oldvar newvar)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 "Define OLDVAR as an obsolete alias for variable NEWVAR.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 This makes referencing or setting OLDVAR equivalent to referencing or
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 setting NEWVAR and marks OLDVAR as obsolete.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 If OLDVAR was bound and NEWVAR was not, Set NEWVAR to OLDVAR.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
61 Note: Use this before any other references (defvar/defcustom) to NEWVAR."
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 (let ((needs-setting (and (boundp oldvar) (not (boundp newvar))))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 (value (and (boundp oldvar) (symbol-value oldvar))))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 (defvaralias oldvar newvar)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 (make-obsolete-variable oldvar newvar)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 (and needs-setting (set newvar value))))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 (defsubst define-compatible-variable-alias (oldvar newvar)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 "Define OLDVAR as a compatible alias for variable NEWVAR.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 This makes referencing or setting OLDVAR equivalent to referencing or
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 setting NEWVAR and marks OLDVAR as provided for compatibility only."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 (defvaralias oldvar newvar)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 (make-compatible-variable oldvar newvar))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
75 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; buffers
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
76
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
77 (define-obsolete-function-alias 'show-buffer 'set-window-buffer)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
78 (define-obsolete-function-alias 'buffer-flush-undo 'buffer-disable-undo)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
79 (make-compatible 'eval-current-buffer 'eval-buffer)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
80
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
81 (defun buffer-local-value (variable buffer)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
82 "Return the value of VARIABLE in BUFFER.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
83 If VARIABLE does not have a buffer-local binding in BUFFER, the value
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
84 is the default binding of variable."
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
85 (symbol-value-in-buffer variable buffer))
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
86 (make-compatible 'buffer-local-value 'symbol-value-in-buffer)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
87
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; device stuff
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 (make-compatible-variable 'window-system "use (console-type)")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 (defun x-display-color-p (&optional device)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93 "Return t if DEVICE is a color device."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 (eq 'color (device-class device)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 (make-compatible 'x-display-color-p 'device-class)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 (define-function 'x-color-display-p 'x-display-color-p)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 (make-compatible 'x-display-color-p 'device-class)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100 (defun x-display-grayscale-p (&optional device)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101 "Return t if DEVICE is a grayscale device."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 (eq 'grayscale (device-class device)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 (make-compatible 'x-display-grayscale-p 'device-class)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 (define-function 'x-grayscale-display-p 'x-display-grayscale-p)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 (make-compatible 'x-display-grayscale-p 'device-class)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 (define-compatible-function-alias 'x-display-pixel-width 'device-pixel-width)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109 (define-compatible-function-alias 'x-display-pixel-height 'device-pixel-height)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 (define-compatible-function-alias 'x-display-planes 'device-bitplanes)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 (define-compatible-function-alias 'x-display-color-cells 'device-color-cells)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; events
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 (define-obsolete-function-alias 'menu-event-p 'misc-user-event-p)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 (make-obsolete-variable 'unread-command-char 'unread-command-events)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; extents
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 (make-obsolete 'set-window-dot 'set-window-point)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 (define-obsolete-function-alias 'extent-buffer 'extent-object)
1024
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 883
diff changeset
123 (define-compatible-variable-alias 'parse-sexp-lookup-properties
ccaf90c5a53a [xemacs-hg @ 2002-10-02 09:29:37 by stephent]
stephent
parents: 883
diff changeset
124 'lookup-syntax-properties)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; frames
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
127
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128 (defun frame-first-window (frame)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
129 "Return the topmost, leftmost window of FRAME.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130 If omitted, FRAME defaults to the currently selected frame."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 (frame-highest-window frame 0))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 (make-compatible 'frame-first-window 'frame-highest-window)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134 (define-obsolete-variable-alias 'initial-frame-alist 'initial-frame-plist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 (define-obsolete-variable-alias 'minibuffer-frame-alist
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 'minibuffer-frame-plist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 (define-obsolete-variable-alias 'pop-up-frame-alist 'pop-up-frame-plist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 (define-obsolete-variable-alias 'special-display-frame-alist
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139 'special-display-frame-plist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 ;; Defined in C.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143 (define-obsolete-variable-alias 'default-frame-alist 'default-frame-plist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
144 (define-obsolete-variable-alias 'default-x-frame-alist 'default-x-frame-plist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145 (define-obsolete-variable-alias 'default-tty-frame-alist
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
146 'default-tty-frame-plist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
147
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
148 (make-compatible 'frame-parameters 'frame-property)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
149 (defun frame-parameters (&optional frame)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
150 "Return the parameters-alist of frame FRAME.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
151 It is a list of elements of the form (PARM . VALUE), where PARM is a symbol.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 The meaningful PARMs depend on the kind of frame.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153 If FRAME is omitted, return information on the currently selected frame.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155 See the variables `default-frame-plist', `default-x-frame-plist', and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
156 `default-tty-frame-plist' for a description of the parameters meaningful
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
157 for particular types of frames."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 (or frame (setq frame (selected-frame)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159 ;; #### This relies on a `copy-sequence' of the user properties in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 ;; `frame-properties'. Removing that would make `frame-properties' more
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161 ;; efficient but this function less efficient, as we couldn't be
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 ;; destructive. Since most callers now use `frame-parameters', we'll
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 ;; do it this way. Should probably change this at some point in the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 ;; future.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165 (destructive-plist-to-alist (frame-properties frame)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
166
883
1e9272790fe0 [xemacs-hg @ 2002-06-26 00:11:15 by youngs]
youngs
parents: 863
diff changeset
167 (make-compatible 'frame-parameter 'frame-property)
1e9272790fe0 [xemacs-hg @ 2002-06-26 00:11:15 by youngs]
youngs
parents: 863
diff changeset
168 (defun frame-parameter (frame parameter)
1e9272790fe0 [xemacs-hg @ 2002-06-26 00:11:15 by youngs]
youngs
parents: 863
diff changeset
169 "Return FRAME's value for parameter PARAMETER.
1e9272790fe0 [xemacs-hg @ 2002-06-26 00:11:15 by youngs]
youngs
parents: 863
diff changeset
170 If FRAME is nil, describe the currently selected frame."
1e9272790fe0 [xemacs-hg @ 2002-06-26 00:11:15 by youngs]
youngs
parents: 863
diff changeset
171 (cdr (assq parameter (frame-parameters frame))))
1e9272790fe0 [xemacs-hg @ 2002-06-26 00:11:15 by youngs]
youngs
parents: 863
diff changeset
172
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
173 (make-compatible 'modify-frame-parameters 'set-frame-properties)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
174 (defun modify-frame-parameters (frame alist)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175 "Modify the properties of frame FRAME according to ALIST.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
176 ALIST is an alist of properties to change and their new values.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
177 Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178 The meaningful PARMs depend on the kind of frame.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
179
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
180 See `set-frame-properties' for built-in property names."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181 ;; it would be nice to be destructive here but that's not safe.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
182 (set-frame-properties frame (alist-to-plist alist)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; faces
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
185
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186 (define-obsolete-function-alias 'list-faces-display 'edit-faces)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187 (define-obsolete-function-alias 'list-faces 'face-list)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
189 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; fonts and colors
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
190
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
191 (defun x-color-values (color &optional frame)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
192 "Return a description of the color named COLOR on frame FRAME.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
193 The value is a list of integer RGB values--(RED GREEN BLUE).
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
194 These values appear to range from 0 to 65280 or 65535, depending
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
195 on the system; white is (65280 65280 65280) or (65535 65535 65535).
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
196 If FRAME is omitted or nil, use the selected frame."
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
197 (color-instance-rgb-components (make-color-instance color)))
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
198 (make-compatible 'x-color-values 'color-instance-rgb-components)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
199
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
200 (make-obsolete 'mswindows-color-list 'color-list)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
201 (make-obsolete 'tty-color-list 'color-list)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
202 (make-compatible 'list-fonts 'font-list)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
203
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
204 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; hooks
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
205
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
206 (make-compatible-variable 'lisp-indent-hook 'lisp-indent-function)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
207 (make-compatible-variable 'comment-indent-hook 'comment-indent-function)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
208 (make-obsolete-variable 'temp-buffer-show-hook
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
209 'temp-buffer-show-function)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
210 (make-obsolete-variable 'inhibit-local-variables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
211 "use `enable-local-variables' (with the reversed sense).")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
212 (make-obsolete-variable 'suspend-hooks 'suspend-hook)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
213 (make-obsolete-variable 'first-change-function 'first-change-hook)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
214 (make-obsolete-variable 'before-change-function
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
215 "use before-change-functions; which is a list of functions rather than a single function.")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
216 (make-obsolete-variable 'after-change-function
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
217 "use after-change-functions; which is a list of functions rather than a single function.")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
218
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
219 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; insertion, deletion, movement
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
220
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
221 (define-compatible-function-alias 'insert-and-inherit 'insert)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
222 (define-compatible-function-alias 'insert-before-markers-and-inherit
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
223 'insert-before-markers)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
224
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
225 (define-compatible-function-alias 'line-beginning-position 'point-at-bol)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
226 (define-compatible-function-alias 'line-end-position 'point-at-eol)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
227
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
228 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; Lisp engine, basic Lisp stuff
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
229
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
230 (make-obsolete 'function-called-at-point 'function-at-point)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
231
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
232 ;; As of 21.5, #'throw is a special operator. This makes bytecode using it
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
233 ;; compiled for 21.4 fail; making this function available works around that.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
234 (defun obsolete-throw (tag value)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
235 "Ugly compatibility hack.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
236
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
237 See the implementation of #'funcall in eval.c. This should be removed once
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
238 we no longer encounter bytecode from 21.4."
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
239 (throw tag value))
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
240
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
241 (make-obsolete
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
242 'obsolete-throw
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
243 "it says `obsolete' in the name, you know you shouldn't be using this.")
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
244
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
245 (define-compatible-function-alias 'cl-mapc 'mapc)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
246
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
247 ; old names
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
248 (define-compatible-function-alias 'byte-code-function-p
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
249 'compiled-function-p) ;FSFmacs
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
250
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
251 (define-compatible-function-alias 'interactive-form
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
252 'function-interactive) ;GNU 21.1
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
253 (define-compatible-function-alias 'assq-delete-all
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
254 'remassq) ;GNU 21.1
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
255
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
256 (defun makehash (&optional test)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
257 "Create a new hash table.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
258 Optional first argument TEST specifies how to compare keys in the table.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
259 Predefined tests are `eq', `eql', and `equal'. Default is `eql'."
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
260 (make-hash-table :test test))
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
261 (make-compatible 'makehash 'make-hash-table)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
262
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
263 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; keys, keymaps
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
264
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
265 (defun keymap-parent (keymap)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
266 "Return the first parent of the given keymap."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
267 (car (keymap-parents keymap)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
268 (make-compatible 'keymap-parent 'keymap-parents)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
269
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
270 (defun set-keymap-parent (keymap parent)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
271 "Make the given keymap have (only) the given parent."
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
272 (set-keymap-parents keymap (if parent (list parent) '()))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
273 parent)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
274 (make-compatible 'set-keymap-parent 'set-keymap-parents)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
275
5208
9fa29ec759e3 Implement suggest-key-bindings in terms of teach-extended-commands-p
Aidan Kehoe <kehoea@parhasard.net>
parents: 5175
diff changeset
276 (make-compatible-variable 'suggest-key-bindings 'teach-extended-commands-p)
9fa29ec759e3 Implement suggest-key-bindings in terms of teach-extended-commands-p
Aidan Kehoe <kehoea@parhasard.net>
parents: 5175
diff changeset
277
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
278 ;; too bad there's not a way to check for aref, assq, and nconc
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
279 ;; being called on the values of functions known to return keymaps,
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
280 ;; or known to return vectors of events instead of strings...
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
281
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
282 ;;; Yes there is; make compiler macros for aref, assq, nconc, checking that
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
283 ;;; the car of the relevant argument is sane.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
284
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
285 (make-obsolete-variable 'executing-macro 'executing-kbd-macro)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
286
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
287 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; menu stuff
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
288
4317
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
289 (defun add-menu-item (menu-path item-name function enabled-p &optional before)
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
290 "Obsolete. See the function `add-menu-button'."
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
291 (or item-name (error "must specify an item name"))
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
292 (declare-fboundp (add-menu-button menu-path (vector item-name function enabled-p) before)))
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
293 (make-obsolete 'add-menu-item 'add-menu-button)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
294
4317
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
295 (defun add-menu (menu-path menu-name menu-items &optional before)
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
296 "See the function `add-submenu'."
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
297 (or menu-name (error "must specify a menu name"))
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
298 (or menu-items (error "must specify some menu items"))
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
299 (declare-fboundp (add-submenu menu-path (cons menu-name menu-items) before)))
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
300 ;; Can't make this obsolete. easymenu depends on it.
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
301 (make-compatible 'add-menu 'add-submenu)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
302
4317
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
303 (define-obsolete-function-alias 'package-get-download-menu
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
304 'package-ui-download-menu)
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
305
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
306 (unless (featurep 'menubar)
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
307 ;; Don't provide the last three functions unless the menubar feature is
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
308 ;; available. This approach (with #'unintern) avoids warnings about lost
15d36164ebd7 Eliminate lost docstring warnings on 21.5.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4222
diff changeset
309 ;; docstrings since make-docfile doesn't parse bytecode.
4783
e29fcfd8df5f Eliminate most core code byte-compile warnings.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4677
diff changeset
310 (mapc #'unintern '(add-menu-item add-menu package-get-download-menu)))
1365
02909207294a [xemacs-hg @ 2003-03-20 13:19:56 by youngs]
youngs
parents: 1024
diff changeset
311
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
312 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; minibuffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
313
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
314 (define-compatible-function-alias 'read-minibuffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
315 'read-expression) ; misleading name
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
316 (define-compatible-function-alias 'read-input 'read-string)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
317
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
318 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; modeline
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
319
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
320 (define-compatible-function-alias 'redraw-mode-line 'redraw-modeline)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
321 (define-compatible-function-alias 'force-mode-line-update
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
322 'redraw-modeline) ;; FSF compatibility
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
323 (define-compatible-variable-alias 'mode-line-map 'modeline-map)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
324 (define-compatible-variable-alias 'mode-line-buffer-identification
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
325 'modeline-buffer-identification)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
326 (define-compatible-variable-alias 'mode-line-process 'modeline-process)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
327 (define-compatible-variable-alias 'mode-line-modified 'modeline-modified)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
328 (make-compatible-variable 'mode-line-inverse-video
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
329 "use set-face-highlight-p and set-face-reverse-p")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
330 (define-compatible-variable-alias 'default-mode-line-format
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
331 'default-modeline-format)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
332 (define-compatible-variable-alias 'mode-line-format 'modeline-format)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
333 (define-compatible-variable-alias 'mode-line-menu 'modeline-menu)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
334
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
335 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; mouse
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
336
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
337 ;;; (defun mouse-eval-last-sexpr (event)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
338 ;;; (interactive "@e")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
339 ;;; (save-excursion
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
340 ;;; (mouse-set-point event)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
341 ;;; (eval-last-sexp nil)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
342
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
343 (define-obsolete-function-alias 'mouse-eval-last-sexpr 'mouse-eval-sexp)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
344
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
345 (defun read-mouse-position (frame)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
346 (cdr (mouse-position (frame-device frame))))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
347 (make-obsolete 'read-mouse-position 'mouse-position)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
348
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
349 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; paths
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
350
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
351 (defvar Info-default-directory-list nil
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
352 "This used to be the initial value of Info-directory-list.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
353 If you want to change the locations where XEmacs looks for info files,
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
354 set Info-directory-list.")
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
355 (make-obsolete-variable 'Info-default-directory-list 'Info-directory-list)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
356
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
357 (defvar init-file-user nil
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
358 "This used to be the name of the user whose init file was read at startup.")
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
359 (make-obsolete-variable 'init-file-user 'load-user-init-file-p)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
360
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
361 (define-obsolete-function-alias 'pui-add-install-directory
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
362 'pui-set-local-package-get-directory) ; misleading name
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
363
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
364 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; redisplay
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
365
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
366 (defun redraw-display (&optional device)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
367 (if (eq device t)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
368 (mapcar 'redisplay-device (device-list))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
369 (redisplay-device device)))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
370
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
371 ;; the functionality of column.el has been moved into C
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
372 ;; Function obsoleted for XEmacs 20.0/February 1997.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
373 (defalias 'display-column-mode 'column-number-mode)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
374
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
375 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; selections
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
376
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
377 (define-obsolete-function-alias 'isearch-yank-x-selection
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
378 'isearch-yank-selection)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
379 (define-obsolete-function-alias 'isearch-yank-x-clipboard
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
380 'isearch-yank-clipboard)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
381
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
382 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; text and strings
777
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
383
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
384 (define-obsolete-function-alias 'sref 'aref)
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
385
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
386 (defun char-bytes (character)
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
387 "Return number of bytes a CHARACTER occupies in a string or buffer.
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
388 It always returns 1 in XEmacs, and in recent FSF Emacs versions."
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
389 1)
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
390 (make-obsolete 'char-bytes "This function always returns 1")
e65d9cf16707 [xemacs-hg @ 2002-03-15 11:00:28 by ben]
ben
parents: 771
diff changeset
391
860
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
392 (defun find-non-ascii-charset-string (string)
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
393 "Return a list of charsets in the STRING except ascii.
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
394 It might be available for compatibility with Mule 2.3,
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
395 because its `find-charset-string' ignores ASCII charset."
4222
38ef5a6da799 [xemacs-hg @ 2007-10-13 14:08:26 by aidan]
aidan
parents: 3555
diff changeset
396 (delq 'ascii (and-fboundp #'charsets-in-string (charsets-in-string string))))
860
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
397 (make-obsolete 'find-non-ascii-charset-string
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
398 "use (delq 'ascii (charsets-in-string STRING)) instead.")
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
399
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
400 (defun find-non-ascii-charset-region (start end)
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
401 "Return a list of charsets except ascii in the region between START and END.
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
402 It might be available for compatibility with Mule 2.3,
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
403 because its `find-charset-string' ignores ASCII charset."
4222
38ef5a6da799 [xemacs-hg @ 2007-10-13 14:08:26 by aidan]
aidan
parents: 3555
diff changeset
404 (delq 'ascii (and-fboundp #'charsets-in-region
38ef5a6da799 [xemacs-hg @ 2007-10-13 14:08:26 by aidan]
aidan
parents: 3555
diff changeset
405 (charsets-in-region start end))))
860
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
406 (make-obsolete 'find-non-ascii-charset-region
b6fa6d07e6f8 [xemacs-hg @ 2002-06-01 20:34:00 by youngs]
youngs
parents: 818
diff changeset
407 "use (delq 'ascii (charsets-in-region START END)) instead.")
818
accc481aef34 [xemacs-hg @ 2002-04-25 06:09:11 by youngs]
youngs
parents: 777
diff changeset
408
3555
db783273b399 [xemacs-hg @ 2006-08-11 01:30:22 by vins]
vins
parents: 2527
diff changeset
409 ;; < 21.5 compatibility, eg. https://bugzilla.redhat.com/201524#c2
db783273b399 [xemacs-hg @ 2006-08-11 01:30:22 by vins]
vins
parents: 2527
diff changeset
410 (define-obsolete-function-alias 'string-to-char-list 'string-to-list)
db783273b399 [xemacs-hg @ 2006-08-11 01:30:22 by vins]
vins
parents: 2527
diff changeset
411
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
412 ;; Two loser functions which shouldn't be used.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
413 (make-obsolete 'following-char 'char-after)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
414 (make-obsolete 'preceding-char 'char-before)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
415
5175
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
416
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
417 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; misc
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
418
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
419 ;; (defun user-original-login-name ()
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
420 ;; "Return user's login name from original login.
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
421 ;; This tries to remain unaffected by `su', by looking in environment variables."
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
422 ;; (or (getenv "LOGNAME") (getenv "USER") (user-login-name)))
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
423 (define-obsolete-function-alias 'user-original-login-name 'user-login-name)
dc94bf0afa37 rearrange stuff in obsolete.el
Ben Wing <ben@xemacs.org>
parents: 4996
diff changeset
424
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
425 ;; Keywords already do The Right Thing in XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
426 (make-compatible 'define-widget-keywords "Just use them")
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
427
5229
7d06a8bf47d2 Move #'purecopy from alloc.c to being an obsolete alias for #'identity
Aidan Kehoe <kehoea@parhasard.net>
parents: 5208
diff changeset
428 (define-function 'purecopy 'identity)
7d06a8bf47d2 Move #'purecopy from alloc.c to being an obsolete alias for #'identity
Aidan Kehoe <kehoea@parhasard.net>
parents: 5208
diff changeset
429 (make-obsolete 'purecopy "purespace is not available in XEmacs.")
4995
8431b52e43b1 Move the various map* functions to C; add #'map-into.
Aidan Kehoe <kehoea@parhasard.net>
parents: 4885
diff changeset
430
5255
b5611afbcc76 Support process plists, for greater GNU compatibility.
Aidan Kehoe <kehoea@parhasard.net>
parents: 5229
diff changeset
431 (define-compatible-function-alias 'process-get 'get)
b5611afbcc76 Support process plists, for greater GNU compatibility.
Aidan Kehoe <kehoea@parhasard.net>
parents: 5229
diff changeset
432 (define-compatible-function-alias 'process-put 'put)
b5611afbcc76 Support process plists, for greater GNU compatibility.
Aidan Kehoe <kehoea@parhasard.net>
parents: 5229
diff changeset
433 (define-compatible-function-alias 'process-plist 'object-plist)
b5611afbcc76 Support process plists, for greater GNU compatibility.
Aidan Kehoe <kehoea@parhasard.net>
parents: 5229
diff changeset
434 (define-compatible-function-alias 'set-process-plist 'object-setplist)
b5611afbcc76 Support process plists, for greater GNU compatibility.
Aidan Kehoe <kehoea@parhasard.net>
parents: 5229
diff changeset
435
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
436 (provide 'obsolete)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
437 ;;; obsolete.el ends here