428
|
1 ;;; obsolete.el --- obsoleteness support
|
|
2
|
|
3 ;; Copyright (C) 1985-1994, 1997 Free Software Foundation, Inc.
|
|
4 ;; Copyright (C) 1994, 1995 Amdahl Corporation.
|
|
5 ;; Copyright (C) 1995 Sun Microsystems.
|
777
|
6 ;; Copyright (C) 2002 Ben Wing.
|
428
|
7
|
|
8 ;; Maintainer: XEmacs Development Team
|
|
9 ;; Keywords: internal, dumped
|
|
10
|
|
11 ;; This file is part of XEmacs.
|
|
12
|
|
13 ;; XEmacs is free software; you can redistribute it and/or modify it
|
|
14 ;; under the terms of the GNU General Public License as published by
|
|
15 ;; the Free Software Foundation; either version 2, or (at your option)
|
|
16 ;; any later version.
|
|
17
|
|
18 ;; XEmacs is distributed in the hope that it will be useful, but
|
|
19 ;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
21 ;; General Public License for more details.
|
|
22
|
|
23 ;; You should have received a copy of the GNU General Public License
|
|
24 ;; along with XEmacs; see the file COPYING. If not, write to the
|
|
25 ;; Free Software Foundation, 59 Temple Place - Suite 330,
|
|
26 ;; Boston, MA 02111-1307, USA.
|
|
27
|
|
28 ;;; Synched up with: Not in FSF.
|
|
29
|
|
30 ;;; Commentary:
|
|
31
|
|
32 ;; This file is dumped with XEmacs.
|
|
33
|
|
34 ;; The obsoleteness support used to be scattered throughout various
|
|
35 ;; source files. We put the stuff in one place to remove the junkiness
|
|
36 ;; from other source files and to facilitate creating/updating things
|
|
37 ;; like sysdep.el.
|
|
38
|
|
39 ;;; Code:
|
|
40
|
|
41 (defsubst define-obsolete-function-alias (oldfun newfun)
|
|
42 "Define OLDFUN as an obsolete alias for function NEWFUN.
|
|
43 This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN
|
|
44 as obsolete."
|
|
45 (define-function oldfun newfun)
|
|
46 (make-obsolete oldfun newfun))
|
|
47
|
|
48 (defsubst define-compatible-function-alias (oldfun newfun)
|
|
49 "Define OLDFUN as a compatible alias for function NEWFUN.
|
|
50 This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN
|
|
51 as provided for compatibility only."
|
|
52 (define-function oldfun newfun)
|
|
53 (make-compatible oldfun newfun))
|
|
54
|
|
55 (defsubst define-obsolete-variable-alias (oldvar newvar)
|
|
56 "Define OLDVAR as an obsolete alias for variable NEWVAR.
|
|
57 This makes referencing or setting OLDVAR equivalent to referencing or
|
|
58 setting NEWVAR and marks OLDVAR as obsolete.
|
|
59 If OLDVAR was bound and NEWVAR was not, Set NEWVAR to OLDVAR.
|
|
60
|
444
|
61 Note: Use this before any other references (defvar/defcustom) to NEWVAR."
|
428
|
62 (let ((needs-setting (and (boundp oldvar) (not (boundp newvar))))
|
|
63 (value (and (boundp oldvar) (symbol-value oldvar))))
|
|
64 (defvaralias oldvar newvar)
|
|
65 (make-obsolete-variable oldvar newvar)
|
|
66 (and needs-setting (set newvar value))))
|
|
67
|
|
68 (defsubst define-compatible-variable-alias (oldvar newvar)
|
|
69 "Define OLDVAR as a compatible alias for variable NEWVAR.
|
|
70 This makes referencing or setting OLDVAR equivalent to referencing or
|
|
71 setting NEWVAR and marks OLDVAR as provided for compatibility only."
|
|
72 (defvaralias oldvar newvar)
|
|
73 (make-compatible-variable oldvar newvar))
|
|
74
|
|
75 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; device stuff
|
|
76
|
|
77 (make-compatible-variable 'window-system "use (console-type)")
|
|
78
|
|
79 (defun x-display-color-p (&optional device)
|
|
80 "Return t if DEVICE is a color device."
|
|
81 (eq 'color (device-class device)))
|
|
82 (make-compatible 'x-display-color-p 'device-class)
|
|
83
|
|
84 (define-function 'x-color-display-p 'x-display-color-p)
|
|
85 (make-compatible 'x-display-color-p 'device-class)
|
|
86
|
|
87 (defun x-display-grayscale-p (&optional device)
|
|
88 "Return t if DEVICE is a grayscale device."
|
|
89 (eq 'grayscale (device-class device)))
|
|
90 (make-compatible 'x-display-grayscale-p 'device-class)
|
|
91
|
|
92 (define-function 'x-grayscale-display-p 'x-display-grayscale-p)
|
|
93 (make-compatible 'x-display-grayscale-p 'device-class)
|
|
94
|
|
95 (define-compatible-function-alias 'x-display-pixel-width 'device-pixel-width)
|
|
96 (define-compatible-function-alias 'x-display-pixel-height 'device-pixel-height)
|
|
97 (define-compatible-function-alias 'x-display-planes 'device-bitplanes)
|
|
98 (define-compatible-function-alias 'x-display-color-cells 'device-color-cells)
|
|
99
|
|
100 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; events
|
|
101
|
|
102 (define-obsolete-function-alias 'menu-event-p 'misc-user-event-p)
|
|
103 (make-obsolete-variable 'unread-command-char 'unread-command-events)
|
|
104
|
|
105 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; extents
|
|
106
|
|
107 (make-obsolete 'set-window-dot 'set-window-point)
|
|
108
|
|
109 (define-obsolete-function-alias 'extent-buffer 'extent-object)
|
1024
|
110 (define-compatible-variable-alias 'parse-sexp-lookup-properties
|
|
111 'lookup-syntax-properties)
|
428
|
112
|
|
113 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; frames
|
|
114 (defun frame-first-window (frame)
|
|
115 "Return the topmost, leftmost window of FRAME.
|
|
116 If omitted, FRAME defaults to the currently selected frame."
|
|
117 (frame-highest-window frame 0))
|
|
118 (make-compatible 'frame-first-window 'frame-highest-window)
|
|
119
|
|
120 (define-obsolete-variable-alias 'initial-frame-alist 'initial-frame-plist)
|
|
121 (define-obsolete-variable-alias 'minibuffer-frame-alist
|
|
122 'minibuffer-frame-plist)
|
|
123 (define-obsolete-variable-alias 'pop-up-frame-alist 'pop-up-frame-plist)
|
|
124 (define-obsolete-variable-alias 'special-display-frame-alist
|
|
125 'special-display-frame-plist)
|
|
126
|
|
127 ;; Defined in C.
|
|
128
|
|
129 (define-obsolete-variable-alias 'default-frame-alist 'default-frame-plist)
|
|
130 (define-obsolete-variable-alias 'default-x-frame-alist 'default-x-frame-plist)
|
|
131 (define-obsolete-variable-alias 'default-tty-frame-alist
|
|
132 'default-tty-frame-plist)
|
|
133
|
|
134 (make-compatible 'frame-parameters 'frame-property)
|
|
135 (defun frame-parameters (&optional frame)
|
|
136 "Return the parameters-alist of frame FRAME.
|
|
137 It is a list of elements of the form (PARM . VALUE), where PARM is a symbol.
|
|
138 The meaningful PARMs depend on the kind of frame.
|
|
139 If FRAME is omitted, return information on the currently selected frame.
|
|
140
|
|
141 See the variables `default-frame-plist', `default-x-frame-plist', and
|
|
142 `default-tty-frame-plist' for a description of the parameters meaningful
|
|
143 for particular types of frames."
|
|
144 (or frame (setq frame (selected-frame)))
|
|
145 ;; #### This relies on a `copy-sequence' of the user properties in
|
|
146 ;; `frame-properties'. Removing that would make `frame-properties' more
|
|
147 ;; efficient but this function less efficient, as we couldn't be
|
|
148 ;; destructive. Since most callers now use `frame-parameters', we'll
|
|
149 ;; do it this way. Should probably change this at some point in the
|
|
150 ;; future.
|
|
151 (destructive-plist-to-alist (frame-properties frame)))
|
|
152
|
883
|
153 (make-compatible 'frame-parameter 'frame-property)
|
|
154 (defun frame-parameter (frame parameter)
|
|
155 "Return FRAME's value for parameter PARAMETER.
|
|
156 If FRAME is nil, describe the currently selected frame."
|
|
157 (cdr (assq parameter (frame-parameters frame))))
|
|
158
|
428
|
159 (make-compatible 'modify-frame-parameters 'set-frame-properties)
|
|
160 (defun modify-frame-parameters (frame alist)
|
|
161 "Modify the properties of frame FRAME according to ALIST.
|
|
162 ALIST is an alist of properties to change and their new values.
|
|
163 Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol.
|
|
164 The meaningful PARMs depend on the kind of frame.
|
|
165
|
|
166 See `set-frame-properties' for built-in property names."
|
|
167 ;; it would be nice to be destructive here but that's not safe.
|
|
168 (set-frame-properties frame (alist-to-plist alist)))
|
|
169
|
|
170 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; faces
|
|
171
|
|
172 (define-obsolete-function-alias 'list-faces-display 'edit-faces)
|
|
173 (define-obsolete-function-alias 'list-faces 'face-list)
|
|
174
|
|
175 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; paths
|
|
176
|
|
177 (defvar Info-default-directory-list nil
|
|
178 "This used to be the initial value of Info-directory-list.
|
|
179 If you want to change the locations where XEmacs looks for info files,
|
|
180 set Info-directory-list.")
|
|
181 (make-obsolete-variable 'Info-default-directory-list 'Info-directory-list)
|
|
182
|
|
183 (defvar init-file-user nil
|
|
184 "This used to be the name of the user whose init file was read at startup.")
|
|
185 (make-obsolete-variable 'init-file-user 'load-user-init-file-p)
|
|
186
|
|
187 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; hooks
|
|
188
|
|
189 (make-compatible-variable 'lisp-indent-hook 'lisp-indent-function)
|
|
190 (make-compatible-variable 'comment-indent-hook 'comment-indent-function)
|
|
191 (make-obsolete-variable 'temp-buffer-show-hook
|
|
192 'temp-buffer-show-function)
|
|
193 (make-obsolete-variable 'inhibit-local-variables
|
|
194 "use `enable-local-variables' (with the reversed sense).")
|
|
195 (make-obsolete-variable 'suspend-hooks 'suspend-hook)
|
|
196 (make-obsolete-variable 'first-change-function 'first-change-hook)
|
|
197 (make-obsolete-variable 'before-change-function
|
|
198 "use before-change-functions; which is a list of functions rather than a single function.")
|
|
199 (make-obsolete-variable 'after-change-function
|
|
200 "use after-change-functions; which is a list of functions rather than a single function.")
|
|
201
|
|
202 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; insertion and deletion
|
|
203
|
|
204 (define-compatible-function-alias 'insert-and-inherit 'insert)
|
|
205 (define-compatible-function-alias 'insert-before-markers-and-inherit
|
|
206 'insert-before-markers)
|
|
207
|
|
208 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; keymaps
|
|
209
|
|
210 (defun keymap-parent (keymap)
|
|
211 "Return the first parent of the given keymap."
|
|
212 (car (keymap-parents keymap)))
|
|
213 (make-compatible 'keymap-parent 'keymap-parents)
|
|
214
|
|
215 (defun set-keymap-parent (keymap parent)
|
|
216 "Make the given keymap have (only) the given parent."
|
|
217 (set-keymap-parents keymap (if parent (list parent) '()))
|
|
218 parent)
|
|
219 (make-compatible 'set-keymap-parent 'set-keymap-parents)
|
|
220
|
|
221 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; menu stuff
|
|
222
|
|
223 (defun add-menu-item (menu-path item-name function enabled-p &optional before)
|
|
224 "Obsolete. See the function `add-menu-button'."
|
|
225 (or item-name (error "must specify an item name"))
|
|
226 (add-menu-button menu-path (vector item-name function enabled-p) before))
|
|
227 (make-obsolete 'add-menu-item 'add-menu-button)
|
|
228
|
|
229 (defun add-menu (menu-path menu-name menu-items &optional before)
|
|
230 "See the function `add-submenu'."
|
442
|
231 (or menu-name (error "must specify a menu name"))
|
|
232 (or menu-items (error "must specify some menu items"))
|
428
|
233 (add-submenu menu-path (cons menu-name menu-items) before))
|
|
234 ;; Can't make this obsolete. easymenu depends on it.
|
|
235 (make-compatible 'add-menu 'add-submenu)
|
|
236
|
|
237 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; minibuffer
|
|
238
|
|
239 (define-compatible-function-alias 'read-minibuffer
|
|
240 'read-expression) ; misleading name
|
|
241 (define-compatible-function-alias 'read-input 'read-string)
|
|
242
|
|
243 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; misc
|
|
244
|
|
245 ;; (defun user-original-login-name ()
|
|
246 ;; "Return user's login name from original login.
|
|
247 ;; This tries to remain unaffected by `su', by looking in environment variables."
|
|
248 ;; (or (getenv "LOGNAME") (getenv "USER") (user-login-name)))
|
|
249 (define-obsolete-function-alias 'user-original-login-name 'user-login-name)
|
|
250
|
|
251 ; old names
|
|
252 (define-obsolete-function-alias 'show-buffer 'set-window-buffer)
|
|
253 (define-obsolete-function-alias 'buffer-flush-undo 'buffer-disable-undo)
|
|
254 (make-compatible 'eval-current-buffer 'eval-buffer)
|
|
255 (define-compatible-function-alias 'byte-code-function-p
|
|
256 'compiled-function-p) ;FSFmacs
|
|
257
|
|
258 (define-obsolete-function-alias 'isearch-yank-x-selection
|
|
259 'isearch-yank-selection)
|
|
260 (define-obsolete-function-alias 'isearch-yank-x-clipboard
|
|
261 'isearch-yank-clipboard)
|
|
262
|
|
263 ;; too bad there's not a way to check for aref, assq, and nconc
|
|
264 ;; being called on the values of functions known to return keymaps,
|
|
265 ;; or known to return vectors of events instead of strings...
|
|
266
|
|
267 (make-obsolete-variable 'executing-macro 'executing-kbd-macro)
|
|
268
|
718
|
269 (define-compatible-function-alias 'interactive-form
|
863
|
270 'function-interactive) ;GNU 21.1
|
|
271 (define-compatible-function-alias 'assq-delete-all
|
|
272 'remassq) ;GNU 21.1
|
718
|
273
|
883
|
274 (defun makehash (&optional test)
|
|
275 "Create a new hash table.
|
|
276 Optional first argument TEST specifies how to compare keys in the table.
|
|
277 Predefined tests are `eq', `eql', and `equal'. Default is `eql'."
|
|
278 (make-hash-table :test test))
|
|
279 (make-compatible 'makehash 'make-hash-table)
|
|
280
|
|
281 (defun buffer-local-value (variable buffer)
|
|
282 "Return the value of VARIABLE in BUFFER.
|
|
283 If VARIABLE does not have a buffer-local binding in BUFFER, the value
|
|
284 is the default binding of variable."
|
|
285 (symbol-value-in-buffer variable buffer))
|
|
286 (make-compatible 'buffer-local-value 'symbol-value-in-buffer)
|
|
287
|
|
288 (define-compatible-function-alias 'line-beginning-position 'point-at-bol)
|
|
289 (define-compatible-function-alias 'line-end-position 'point-at-eol)
|
|
290
|
428
|
291 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; modeline
|
|
292
|
|
293 (define-compatible-function-alias 'redraw-mode-line 'redraw-modeline)
|
|
294 (define-compatible-function-alias 'force-mode-line-update
|
|
295 'redraw-modeline) ;; FSF compatibility
|
|
296 (define-compatible-variable-alias 'mode-line-map 'modeline-map)
|
|
297 (define-compatible-variable-alias 'mode-line-buffer-identification
|
|
298 'modeline-buffer-identification)
|
|
299 (define-compatible-variable-alias 'mode-line-process 'modeline-process)
|
|
300 (define-compatible-variable-alias 'mode-line-modified 'modeline-modified)
|
|
301 (make-compatible-variable 'mode-line-inverse-video
|
|
302 "use set-face-highlight-p and set-face-reverse-p")
|
|
303 (define-compatible-variable-alias 'default-mode-line-format
|
|
304 'default-modeline-format)
|
|
305 (define-compatible-variable-alias 'mode-line-format 'modeline-format)
|
|
306 (define-compatible-variable-alias 'mode-line-menu 'modeline-menu)
|
|
307
|
|
308 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; mouse
|
|
309
|
|
310 ;;; (defun mouse-eval-last-sexpr (event)
|
|
311 ;;; (interactive "@e")
|
|
312 ;;; (save-excursion
|
|
313 ;;; (mouse-set-point event)
|
|
314 ;;; (eval-last-sexp nil)))
|
|
315
|
|
316 (define-obsolete-function-alias 'mouse-eval-last-sexpr 'mouse-eval-sexp)
|
|
317
|
|
318 (defun read-mouse-position (frame)
|
|
319 (cdr (mouse-position (frame-device frame))))
|
|
320 (make-obsolete 'read-mouse-position 'mouse-position)
|
|
321
|
|
322 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; redisplay
|
|
323
|
|
324 (defun redraw-display (&optional device)
|
|
325 (if (eq device t)
|
|
326 (mapcar 'redisplay-device (device-list))
|
|
327 (redisplay-device device)))
|
|
328
|
777
|
329 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; strings
|
|
330
|
|
331 (define-obsolete-function-alias 'sref 'aref)
|
|
332
|
|
333 (defun char-bytes (character)
|
|
334 "Return number of bytes a CHARACTER occupies in a string or buffer.
|
|
335 It always returns 1 in XEmacs, and in recent FSF Emacs versions."
|
|
336 1)
|
|
337 (make-obsolete 'char-bytes "This function always returns 1")
|
|
338
|
860
|
339 (defun find-non-ascii-charset-string (string)
|
|
340 "Return a list of charsets in the STRING except ascii.
|
|
341 It might be available for compatibility with Mule 2.3,
|
|
342 because its `find-charset-string' ignores ASCII charset."
|
|
343 (delq 'ascii (charsets-in-string string)))
|
|
344 (make-obsolete 'find-non-ascii-charset-string
|
|
345 "use (delq 'ascii (charsets-in-string STRING)) instead.")
|
|
346
|
|
347 (defun find-non-ascii-charset-region (start end)
|
|
348 "Return a list of charsets except ascii in the region between START and END.
|
|
349 It might be available for compatibility with Mule 2.3,
|
|
350 because its `find-charset-string' ignores ASCII charset."
|
|
351 (delq 'ascii (charsets-in-region start end)))
|
|
352 (make-obsolete 'find-non-ascii-charset-region
|
|
353 "use (delq 'ascii (charsets-in-region START END)) instead.")
|
818
|
354
|
428
|
355 ;;;;;;;;;;;;;;;;;;;;;;;;;;;; window-system objects
|
|
356
|
|
357 ;; the functionality of column.el has been moved into C
|
|
358 ;; Function obsoleted for XEmacs 20.0/February 1997.
|
|
359 (defalias 'display-column-mode 'column-number-mode)
|
|
360
|
|
361 (defun x-color-values (color &optional frame)
|
|
362 "Return a description of the color named COLOR on frame FRAME.
|
|
363 The value is a list of integer RGB values--(RED GREEN BLUE).
|
|
364 These values appear to range from 0 to 65280 or 65535, depending
|
|
365 on the system; white is (65280 65280 65280) or (65535 65535 65535).
|
|
366 If FRAME is omitted or nil, use the selected frame."
|
|
367 (color-instance-rgb-components (make-color-instance color)))
|
|
368 (make-compatible 'x-color-values 'color-instance-rgb-components)
|
|
369
|
|
370 ;; Two loser functions which shouldn't be used.
|
|
371 (make-obsolete 'following-char 'char-after)
|
|
372 (make-obsolete 'preceding-char 'char-before)
|
|
373
|
|
374 ;; Keywords already do The Right Thing in XEmacs
|
|
375 (make-compatible 'define-widget-keywords "Just use them")
|
|
376
|
|
377 (make-obsolete 'function-called-at-point 'function-at-point)
|
|
378
|
|
379 (provide 'obsolete)
|
|
380 ;;; obsolete.el ends here
|