Lines 1-121
Link Here
|
1 |
--- gnuserv-compat.el.orig Mon Feb 12 09:13:19 2001 |
|
|
2 |
+++ gnuserv-compat.el Fri May 23 08:10:39 2003 |
3 |
@@ -1,10 +1,10 @@ |
4 |
;; gnuserv-compat.el - Help GNU XEmacs gnuserv.el work under GNU Emacs. |
5 |
-;; Copyright (C) 1998, 1999, 2000 Martin Schwenke |
6 |
+;; Copyright (C) 1998, 1999, 2000, 2003 Martin Schwenke |
7 |
;; |
8 |
;; Author: Martin Schwenke <martin@meltin.net> |
9 |
;; Maintainer: Martin Schwenke <martin@meltin.net> |
10 |
;; Created: 20 November 1998 |
11 |
-;; $Id: gnuserv-compat.el,v 1.7 2001/02/12 00:13:19 martin Exp $ |
12 |
+;; $Id: gnuserv-compat.el,v 1.10 2003/05/09 01:26:42 martins Exp $ |
13 |
;; Keywords: gnuserv |
14 |
|
15 |
;; This program is free software; you can redistribute it and/or modify |
16 |
@@ -26,7 +26,7 @@ |
17 |
|
18 |
;;; Commentary: |
19 |
;; |
20 |
-;; Under non-XEmacs (tested 19.34 <= ... <= 20.7) |
21 |
+;; Under non-XEmacs (tested 20.7, 21.x) |
22 |
;; |
23 |
;; (autoload 'gnuserv-start "gnuserv-compat" |
24 |
;; "Allow this Emacs process to be a server for client processes." |
25 |
@@ -51,40 +51,50 @@ |
26 |
|
27 |
(require 'cl) |
28 |
|
29 |
-(unless (fboundp 'define-obsolete-variable-alias) |
30 |
- (defalias 'define-obsolete-variable-alias 'make-obsolete-variable)) |
31 |
+(eval-and-compile |
32 |
+ (unless (fboundp 'define-obsolete-variable-alias) |
33 |
+ (defalias 'define-obsolete-variable-alias 'make-obsolete-variable)) |
34 |
|
35 |
-(unless (fboundp 'functionp) |
36 |
- (defun functionp (object) |
37 |
- "Non-nil if OBJECT is a type of object that can be called as a function." |
38 |
- (or (subrp object) (byte-code-function-p object) |
39 |
- (eq (car-safe object) 'lambda) |
40 |
- (and (symbolp object) (fboundp object))))) |
41 |
- |
42 |
-;;; temporary-file-directory not available in 19.34 |
43 |
-(unless (boundp 'temporary-file-directory) |
44 |
- (defvar temporary-file-directory |
45 |
- (cond |
46 |
- ((getenv "TMPDIR")) |
47 |
- (t "/tmp")))) |
48 |
- |
49 |
-(unless (fboundp 'temp-directory) |
50 |
- (defun temp-directory () |
51 |
- "Return the pathname to the directory to use for temporary files. |
52 |
+ (unless (fboundp 'functionp) |
53 |
+ (defun functionp (object) |
54 |
+ "Non-nil if OBJECT is a type of object that can be called as a function." |
55 |
+ (or (subrp object) (byte-code-function-p object) |
56 |
+ (eq (car-safe object) 'lambda) |
57 |
+ (and (symbolp object) (fboundp object))))) |
58 |
+ |
59 |
+ ;; add-minor-mode not available in 20.7 |
60 |
+ (unless (fboundp 'add-minor-mode) |
61 |
+ (defun add-minor-mode (toggle name) |
62 |
+ "Register a new minor mode." |
63 |
+ (pushnew (list toggle name) |
64 |
+ minor-mode-alist |
65 |
+ :test 'equal))) |
66 |
+ |
67 |
+ ;; temporary-file-directory not available in 19.34 |
68 |
+ (unless (boundp 'temporary-file-directory) |
69 |
+ (defvar temporary-file-directory |
70 |
+ (cond |
71 |
+ ((getenv "TMPDIR")) |
72 |
+ (t "/tmp")))) |
73 |
+ |
74 |
+ (unless (fboundp 'temp-directory) |
75 |
+ (defun temp-directory () |
76 |
+ "Return the pathname to the directory to use for temporary files. |
77 |
On NT/MSDOS, this is obtained from the TEMP or TMP environment variables, |
78 |
defaulting to the value of `temporary-file-directory' if they are both |
79 |
undefined. On Unix it is obtained from TMPDIR, with the value of |
80 |
`temporary-file-directory' as the default." |
81 |
- |
82 |
- (if (eq system-type 'windows-nt) |
83 |
+ |
84 |
+ (if (eq system-type 'windows-nt) |
85 |
+ (cond |
86 |
+ ((getenv "TEMP")) |
87 |
+ ((getenv "TMP")) |
88 |
+ (t (directory-file-name temporary-file-directory))) |
89 |
(cond |
90 |
- ((getenv "TEMP")) |
91 |
- ((getenv "TMP")) |
92 |
- (t (directory-file-name temporary-file-directory))) |
93 |
- (cond |
94 |
- ((getenv "TMPDIR")) |
95 |
- (t (directory-file-name temporary-file-directory)))))) |
96 |
- |
97 |
+ ((getenv "TMPDIR")) |
98 |
+ (t (directory-file-name temporary-file-directory)))))) |
99 |
+ ) ;; eval-and-compile |
100 |
+ |
101 |
|
102 |
;; If we're not running XEmacs then advise `make-frame', |
103 |
;; `delete-frame' and `filtered-frame-list' to handle some device |
104 |
@@ -147,7 +157,7 @@ |
105 |
(defalias 'device-list 'frame-list) |
106 |
(defalias 'selected-device 'selected-frame) |
107 |
(defun device-frame-list (&optional device) |
108 |
- (list |
109 |
+ (list |
110 |
(if device |
111 |
device |
112 |
(selected-frame))))) |
113 |
@@ -182,7 +192,7 @@ |
114 |
;; We have the old custom-library, hack around it! |
115 |
(defmacro defgroup (&rest args) |
116 |
nil) |
117 |
- (defmacro defcustom (var value doc &rest args) |
118 |
+ (defmacro defcustom (var value doc &rest args) |
119 |
(` (defvar (, var) (, value) (, doc)))) |
120 |
(defmacro defface (var value doc &rest args) |
121 |
(` (make-face (, var)))) |