Mercurial > hg > xemacs-beta
comparison lisp/prim/about.el @ 0:376386a54a3c r19-14
Import from CVS: tag r19-14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:45:50 +0200 |
parents | |
children | ac2d302a0011 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:376386a54a3c |
---|---|
1 ;;; about.el --- the About The Authors page (shameless self promotion). | |
2 ;;; | |
3 | |
4 ;; Copyright (c) 1995, 1996 XEmacs Advocacy Organization. | |
5 | |
6 ;; This file is part of XEmacs. | |
7 | |
8 ;; XEmacs is free software; you can redistribute it and/or modify it | |
9 ;; under the terms of the GNU General Public License as published by | |
10 ;; the Free Software Foundation; either version 2, or (at your option) | |
11 ;; any later version. | |
12 | |
13 ;; XEmacs is distributed in the hope that it will be useful, but | |
14 ;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
16 ;; General Public License for more details. | |
17 | |
18 ;; You should have received a copy of the GNU General Public License | |
19 ;; along with XEmacs; see the file COPYING. If not, write to the Free | |
20 ;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
21 | |
22 ;;; Synched up with: Not in FSF. | |
23 | |
24 ;;; This is kind of a kludge. We were going to use W3 to do this, but | |
25 ;;; it's too slow to load, and HTML gives you too little control over | |
26 ;;; the layout (especially indentation and inter-paragraph spacing). | |
27 ;;; Maybe the text should have been written in limited HTML anyway, | |
28 ;;; and I should have hacked up a simple and fast parser for it, but | |
29 ;;; it's done now... | |
30 ;;; | |
31 ;;; Code: Jamie Zawinski <jwz@netscape.com> | |
32 ;;; Text: Ben Wing <wing@666.com>, Jamie Zawinski <jwz@netscape.com> | |
33 ;;; Hard: Amiga 1000, Progressive Peripherals Frame Grabber. | |
34 ;;; Soft: FG 2.0, DigiPaint 3.0, pbmplus (dec 91), xv 3.0. | |
35 ;;; Modified for 19.11 by Eduardo Pelegri-Llopart <pelegri@eng.sun.com> | |
36 ;;; and Chuck Thompson <cthomp@xemacs.org> | |
37 ;;; More hacking for 19.12 by Chuck Thompson and Ben Wing. | |
38 ;;; 19.13 and 19.14 updating done by Chuck Thompson. | |
39 | |
40 (require 'browse-url) | |
41 (defvar about-xref-map (let ((map (make-sparse-keymap))) | |
42 (define-key map 'button1 'about-xemacs-xref) | |
43 (define-key map 'button2 'about-xemacs-xref) | |
44 (define-key map '(return) 'about-xemacs-xref) | |
45 map)) | |
46 | |
47 ;; This historically significant variable has been removed from service. | |
48 (defvar what-are-we-calling-it-today "XEmacs") | |
49 | |
50 (defun about-face (text face) | |
51 (let ((p (point)) | |
52 e) | |
53 (insert text) | |
54 (setq e (make-extent p (point))) | |
55 ;;(set-extent-property e 'start-open t) | |
56 (set-extent-face e face) | |
57 e)) | |
58 | |
59 (defun about-xref (text xref help) | |
60 (let ((e (about-face text 'bold))) | |
61 (set-extent-property e 'keymap about-xref-map) | |
62 (set-extent-property e 'mouse-face 'highlight) | |
63 (set-extent-property e 'xref xref) | |
64 (set-extent-property e 'help-echo help) | |
65 e)) | |
66 | |
67 ;;;###autoload | |
68 (defun about-xemacs () | |
69 (interactive) | |
70 (switch-to-buffer (get-buffer-create "About XEmacs")) | |
71 (delete-other-windows) | |
72 (buffer-disable-undo (current-buffer)) | |
73 (widen) | |
74 (set (make-local-variable 'tab-width) 8) | |
75 (setq buffer-read-only t) | |
76 (view-mode nil 'kill-buffer) ;; assume the new view-less | |
77 (let* ((buffer-read-only nil) | |
78 (emacs-short-version (concat emacs-major-version "." emacs-minor-version)) | |
79 (emacs-about-version (format "version %s; June 1996" emacs-short-version)) | |
80 (indent-tabs-mode t) | |
81 ) | |
82 (erase-buffer) | |
83 (insert "\n") | |
84 (indent-to (startup-center-spaces xemacs-logo)) | |
85 (let ((e (make-extent (point) (point)))) | |
86 (set-extent-begin-glyph e xemacs-logo)) | |
87 (insert "\n\n") | |
88 (indent-to (startup-center-spaces "(formerly known as Lucid Emacs)")) | |
89 (insert "(formerly known as Lucid Emacs)") | |
90 (insert "\n\n") | |
91 (indent-to (startup-center-spaces emacs-about-version)) | |
92 (about-xref emacs-about-version 'news "The latest NEWS of XEmacs") | |
93 (insert "\n\n") | |
94 | |
95 (insert "\n\t") | |
96 (about-face "XEmacs" 'italic) | |
97 (insert " is a powerful, extensible text editor with full GUI | |
98 support, initially based on an early version of GNU Emacs 19 from | |
99 the Free Software Foundation and since kept up to date with recent | |
100 versions of that product. XEmacs stems from a ") | |
101 (about-xref "collaboration" 'history "An XEmacs History Lesson") | |
102 (insert "\n\tof Lucid, Inc. with Sun Microsystems, Inc. and the University | |
103 of Illinois with additional support having been provided by | |
104 Amdahl Corporation and INS Engineering Corporation.\n\n\t") | |
105 | |
106 (insert "In almost all circumstances, Emacs-Lisp code written for | |
107 GNU Emacs versions 18 and 19 will run under XEmacs without | |
108 requiring any modifications, or at most will require small | |
109 changes to accommodate an improved functional interface.\n\n\t") | |
110 | |
111 (insert "XEmacs provides a great number of ") | |
112 (about-xref "new features" 'features "See a list of the new features.") | |
113 (insert ". More details | |
114 on XEmacs's functionality, including bundled packages can be | |
115 obtained through the ") | |
116 | |
117 (about-xref "`info`" 'info "Look at the info pages") | |
118 (insert " on-line information system. | |
119 | |
120 The WWW page for XEmacs can be browsed, using any WWW browser, at\n\t\t") | |
121 (about-xref "http://www.xemacs.org/" 'w3-xemacs "Go to the XEmacs World Wide Web page") | |
122 (insert "\n\n\tNote that w3 (XEmacs's own browser), might need customization | |
123 (due to firewalls) in order to work correctly.\n\n\t") | |
124 | |
125 (insert "XEmacs is the result of the time and effort of many people. | |
126 The developers responsible for the " emacs-short-version " release are: | |
127 | |
128 * ") (about-xref "Chuck Thompson" 'cthomp "Find out more about Chuck Thompson") (insert " <cthomp@xemacs.org> | |
129 * ") (about-xref "Ben Wing" 'wing "Find out more about Ben Wing") (insert " <wing@xemacs.org> | |
130 | |
131 * ") (about-xref "And many other contributors..." 'others "Read about the legion of XEmacs hackers") (insert " | |
132 | |
133 Jamie Zawinski was Mr. Lucid Emacs from 19.0 through 19.10, | |
134 the last release actually named Lucid Emacs. Richard Mlynarik | |
135 was crucial to most of those releases. | |
136 | |
137 * ") (about-xref "Jamie Zawinski" 'jwz "Find out more about Jamie Zawinski") (insert " <jwz@netscape.com> | |
138 * ") (about-xref "Richard Mlynarik" 'mly "Find out more about Richard Mlynarik") (insert " <mly@adoc.xerox.com>") | |
139 (insert "\n\n\tClick ") | |
140 (about-xref "here" 'kill-buffer "Exit the About page") | |
141 (insert " to remove (kill) this buffer.") | |
142 (goto-char (point-min))) | |
143 ) | |
144 | |
145 (defun about-load-mosaic (&optional who-to-load) | |
146 (save-excursion | |
147 (set-buffer (get-buffer-create "About XEmacs")) | |
148 (toggle-read-only 0) | |
149 | |
150 (let ((rest (if who-to-load (list who-to-load) | |
151 '(cthomp wing stig jwz mly vladimir baw piper bw wmperry))) | |
152 (got-error nil)) | |
153 (while rest | |
154 (let* ((who (car rest)) | |
155 (who-xpm (expand-file-name | |
156 (concat (symbol-name who) | |
157 (if (memq (device-class (selected-device)) | |
158 '(color grayscale)) | |
159 "" | |
160 "m") | |
161 ".xpm") | |
162 data-directory))) | |
163 (or (file-exists-p who-xpm) (setq who-xpm (concat who-xpm ".Z"))) | |
164 (if (eq nil (assoc who (buffer-local-variables))) | |
165 (make-local-variable who)) | |
166 (if (and (boundp who) | |
167 (glyphp (symbol-value who))) | |
168 nil | |
169 (message "One moment please...") | |
170 (condition-case c | |
171 (save-restriction | |
172 (set who nil) | |
173 (narrow-to-region (point) (point)) | |
174 (insert-file-contents who-xpm) | |
175 (if (looking-at "\037\235") ;may already be decompressed... | |
176 (call-process-region (point-min) (point-max) | |
177 "zcat" t t nil)) | |
178 (set who (make-glyph | |
179 (prog1 (buffer-string) | |
180 (delete-region (point-min) (point-max))))) | |
181 ) | |
182 (error | |
183 (setq got-error t) | |
184 (message nil) | |
185 (display-error c nil) | |
186 (sit-for 2))))) | |
187 (setq rest (cdr rest))) | |
188 (or got-error (message nil))) | |
189 (toggle-read-only 1) | |
190 )) | |
191 | |
192 (defun about-add-mosaic () | |
193 (goto-char (point-min)) | |
194 (about-load-mosaic) | |
195 | |
196 ;; HERE TO PLACE ADDITIONAL MUGSHOTS | |
197 | |
198 (goto-char (point-max)) | |
199 (insert "\n ") | |
200 | |
201 (let ((rest '(cthomp wing stig linebreak jwz mly vladimir linebreak baw piper bw linebreak wmperry)) | |
202 (got-error nil)) | |
203 (while rest | |
204 (if (eq (car rest) 'linebreak) | |
205 (insert "\n\n ") | |
206 (let* ((who (car rest)) | |
207 (b (get-buffer "About XEmacs")) | |
208 (p (symbol-value-in-buffer who b nil))) | |
209 (or (glyphp p) (setq p nil)) | |
210 (and p | |
211 (let ((e (make-extent (point) (point)))) | |
212 (set-extent-begin-glyph e p) | |
213 (set-extent-property e 'keymap about-xref-map) | |
214 (set-extent-property e 'xref who))) | |
215 (insert " ") | |
216 (sit-for 0))) | |
217 (setq rest (cdr rest))) | |
218 (insert "\n") | |
219 (goto-char (point-min)) | |
220 (or got-error (message nil))) | |
221 ) | |
222 | |
223 (defun about-xemacs-xref () | |
224 (interactive "@") | |
225 (let* ((e (or current-mouse-event last-input-event)) | |
226 (extent (or (and (null e) (extent-at (point))) | |
227 (and (mouse-event-p e) (event-glyph-extent e)) | |
228 (extent-at (if (mouse-event-p e) | |
229 (event-point e) | |
230 (point)) | |
231 (if (mouse-event-p e) | |
232 (event-buffer e) | |
233 (current-buffer)) | |
234 'xref))) | |
235 (xref (extent-property extent 'xref)) | |
236 prev-page) | |
237 ;; prev-page is used for the core people's pages since they can be | |
238 ;; reached from two different locations | |
239 (if (equal (buffer-name) "About XEmacs") | |
240 (setq prev-page 'about) | |
241 ;; Kill the sub-buffers when going back to the top, so that we | |
242 ;; don't hold pointers to the bitmaps longer than necessary. | |
243 (if (not (eq xref 'w3-jamie)) | |
244 (progn | |
245 (kill-buffer (current-buffer)) | |
246 (setq prev-page 'others)))) | |
247 (cond | |
248 ((eq xref 'about) | |
249 (about-xemacs)) | |
250 ((eq xref 'info) | |
251 (info)) | |
252 ((or (eq xref 'w3-xemacs) (eq xref 'w3-jamie)) | |
253 (funcall browse-url-browser-function | |
254 (if (eq xref 'w3-xemacs) | |
255 "http://www.xemacs.org/" | |
256 "http://www.netscape.com/people/jwz/"))) | |
257 ((eq xref 'kill-buffer) | |
258 (kill-buffer (current-buffer))) | |
259 ((eq xref 'news) | |
260 (view-emacs-news) | |
261 (view-mode nil 'kill-buffer) ;; assume the new view-less | |
262 (save-excursion | |
263 (goto-char (point-min)) | |
264 (let ((buffer-read-only nil)) | |
265 (insert "\nClick ") | |
266 (about-xref "here" prev-page "Return to previous page") | |
267 (insert " to go back to the previous page.\n\n") | |
268 (set-buffer-modified-p nil) | |
269 ))) | |
270 (t | |
271 (switch-to-buffer (get-buffer-create | |
272 (cond ((eq xref 'jwz) "About Jamie Zawinski") | |
273 ((eq xref 'cthomp) "About Chuck Thompson") | |
274 ((eq xref 'wing) "About Ben Wing") | |
275 ((eq xref 'mly) "About Richard Mlynarik") | |
276 ((eq xref 'vladimir) "About Vladimir Ivanovic") | |
277 ((eq xref 'baw) "About Barry Warsaw") | |
278 ((eq xref 'wmperry) "About William Perry") | |
279 ((eq xref 'bw) "About Bob Weiner") | |
280 ((eq xref 'piper) "About Andy Piper") | |
281 ((eq xref 'stig) "About Jonathan Stigelman") | |
282 ((eq xref 'others) "About Everyone") | |
283 ((eq xref 'features) "New XEmacs Features") | |
284 ((eq xref 'history) "XEmacs History") | |
285 ))) | |
286 (delete-other-windows) | |
287 (buffer-disable-undo (current-buffer)) | |
288 (widen) | |
289 (setq buffer-read-only t) | |
290 (view-mode nil 'kill-buffer) ;; assume the new view-less | |
291 (let ((buffer-read-only nil) | |
292 (case-fold-search nil) | |
293 ) | |
294 (if (and (not (eq xref 'others)) (not (eq xref 'history)) | |
295 (not (eq xref 'features))) | |
296 (about-load-mosaic xref)) | |
297 (erase-buffer) | |
298 (let* ((b (get-buffer "About XEmacs")) | |
299 (p (and b (symbol-value-in-buffer xref b nil)))) | |
300 (or (glyphp p) (setq p nil)) | |
301 (cond (p | |
302 (insert "\n\t") | |
303 (set-extent-begin-glyph (make-extent (point) (point)) p) | |
304 (insert "\n\t")) | |
305 (t | |
306 (insert "\n\t")))) | |
307 (cond | |
308 ((eq xref 'history) | |
309 (insert "Click ") | |
310 (about-xref "here" prev-page "Return to previous page") | |
311 (insert " to go back to the previous page.\n\n\t") | |
312 | |
313 (about-face "XEmacs" 'bold) | |
314 (insert "\n\n\n\t") | |
315 (about-face "The Lucid, Inc. Point of View" 'italic) | |
316 (insert " | |
317 | |
318 At the time of the inception of Lucid Emacs (the former name | |
319 of XEmacs), Lucid's latest product was Energize, a C/C++ | |
320 development environment. Rather than invent (and force our | |
321 users to learn) a new user interface, we chose to build part | |
322 of our environment on top of the world's best editor, GNU | |
323 Emacs. (Though our product is commercial, the work we did on | |
324 GNU Emacs is free software, and is useful in its own right.) | |
325 | |
326 We needed a version of Emacs with mouse-sensitive regions, | |
327 multiple fonts, the ability to mark sections of a buffer as | |
328 read-only, the ability to detect which parts of a buffer has | |
329 been modified, and many other features. | |
330 | |
331 For our purposes, the existing version of Epoch was not | |
332 sufficient; it did not allow us to put arbitrary pixmaps/icons | |
333 in buffers, `undo' did not restore changes to regions, regions | |
334 did not overlap and merge their attributes in the way we needed, | |
335 and several other things. | |
336 | |
337 We could have devoted our time to making Epoch do what we needed | |
338 (and, in fact, we spent some time doing that in 1990) but, since | |
339 the FSF planned to include Epoch-like features in their version | |
340 19, we decided that our efforts would be better spent improving | |
341 Emacs 19 instead of Epoch. | |
342 | |
343 Our original hope was that our changes to Emacs would be | |
344 incorporated into the \"official\" v19. However, scheduling | |
345 conflicts arose, and we found that, given the amount of work | |
346 still remaining to be done, we didn't have the time or manpower | |
347 to do the level of coordination that would be necessary to get | |
348 our changes accepted by the FSF. Consequently, we released our | |
349 work as a forked branch of Emacs, instead of delaying any | |
350 longer. | |
351 | |
352 Roughly a year after Lucid Emacs 19.0 was released, a beta | |
353 version of the FSF branch of Emacs 19 was released. The FSF | |
354 version is better in some areas, and worse in others, as | |
355 reflects the differing focus of our development efforts. | |
356 | |
357 We plan to continue developing and supporting Lucid Emacs, and | |
358 merging in bug fixes and new features from the FSF branch as | |
359 appropriate; we do not plan to discard any of the functionality | |
360 that we implemented which RMS has chosen not to include in his | |
361 version. | |
362 | |
363 Certain elements of Lucid Emacs, or derivatives of them, have | |
364 been ported to the FSF version. We have not been doing work in | |
365 this direction, because we feel that Lucid Emacs has a cleaner | |
366 and more extensible substrate, and that any kind of merger | |
367 between the two branches would be far easier by merging the FSF | |
368 changes into our version than the other way around. | |
369 | |
370 We have been working closely with the Epoch developers to merge | |
371 in the remaining Epoch functionality which Lucid Emacs does not | |
372 yet have. Epoch and Lucid Emacs will soon be one and the same | |
373 thing. Work is being done on a compatibility package which will | |
374 allow Epoch 4 code to run in XEmacs with little or no change.") | |
375 | |
376 (insert "\n\n\n\t") | |
377 (about-face "The Sun Microsystems, Inc. Point of View" 'italic) | |
378 (insert " | |
379 | |
380 Emacs 18 has been around for a long, long time. Version 19 was | |
381 supposed to be the successor to v18 with X support. It was | |
382 going to be available \"real soon\" for a long time (some | |
383 people remember hearing about v19 as early as 1984!), but it | |
384 never came out. v19 development was going very, very slowly, | |
385 and from the outside it seemed that it was not moving at all. | |
386 In the meantime other people gave up waiting for v19 and | |
387 decided to build their own X-aware Emacsen. The most important | |
388 of these was probably Epoch, which came from University of | |
389 Illinois (\"UofI\") and was based on v18. | |
390 | |
391 Around three or four years ago what was then called SunPro (a | |
392 division of Sun Microsystems, Inc.) decided that it wanted an | |
393 integrated editor. They contracted with UofI to provide a | |
394 number of basic enhancements to the functionality in Epoch. | |
395 UofI initially was planning to deliver this on top of Epoch | |
396 code. | |
397 | |
398 In the meantime (actually some time before they talked with UofI) | |
399 Lucid had decided that it also wanted to provide an integrated | |
400 environment with an integrated editor. Lucid decided that the | |
401 v19 basis was a better one than v18 and thus decided not to use | |
402 Epoch but instead work with Richard Stallman, the head of the | |
403 Free Software Foundation and principle author of Emacs, on | |
404 getting v19 out. At some point Stallman and Lucid parted ways. | |
405 Lucid kept working and got a v19 out that they called Lucid | |
406 Emacs 19. | |
407 | |
408 After Lucid's v19 came out it became clear to UofI and SunPro | |
409 that the right thing to do was to push for an integration of | |
410 both Lucid Emacs and Epoch, and to get the deliverables that | |
411 SunPro was asking from UofI on top of this integrated | |
412 platform. Through the last three or four years, SunPro has | |
413 been actively supporting this product and has been investing a | |
414 comparable amount of effort into it as Lucid has. Substantial | |
415 portions of the current code have originated under the support | |
416 of SunPro, either directly in SunPro, or in UofI but paid for | |
417 by SunPro. This code was kept away from Lucid for a while, | |
418 but later was made available to them. Initially Lucid didn't | |
419 know that SunPro was supporting UofI, but later they were open | |
420 about it. | |
421 | |
422 Around two years ago the SunPro-related code started showing up | |
423 in Lucid Emacs. This started with the infusion of the Epoch | |
424 redisplay code. | |
425 | |
426 At this moment there is basically no difference in the source | |
427 trees between what is at UofI and at Sun. All the development | |
428 sites are in sync. | |
429 | |
430 SunPro originally called the integrated product ERA, for | |
431 \"Emacs Rewritten Again\". SunPro and Lucid eventually came | |
432 to an agreement to find a name for the product that was not | |
433 specific to either company. An additional constraint that | |
434 Lucid placed on the name was that it must contain the word | |
435 \"Emacs\" in it -- thus \"ERA\" was not acceptable. The | |
436 tentatively agreed-upon name was \"XEmacs\", and this has | |
437 been the name of the product since version 19.11.)") | |
438 | |
439 (insert "\n\n\n\t") | |
440 (about-face "SunPro is now DevPro (SunSoft Developer Products)\n" 'italic) | |
441 (insert " | |
442 In mid-'94 Sun completed a reorganization where SunPro moved to | |
443 SunSoft. As a consequence, SunPro is now called SunSoft Developer | |
444 Products, or DevPro for short. ") | |
445 | |
446 (insert "\n\n\n\t") | |
447 (about-face "Lucid goes under\n" 'italic) | |
448 (insert " | |
449 Around mid-'94, Lucid went out of business. Development on | |
450 XEmacs, however, has continued unabated under the auspices of | |
451 Sun Microsystems and the University of Illinois, with help | |
452 from Amdahl Corporation and INS Engineering Corporation. | |
453 Sun plans to continue to support XEmacs into the future.") | |
454 | |
455 (insert "\n\n\n\t") | |
456 (about-face "The Amdahl Corporation point of view" 'italic) | |
457 (insert " | |
458 | |
459 Amdahl Corporation's Storage Products Group (SPG) uses XEmacs | |
460 as the focal point of a environment for development of the | |
461 microcode used in Amdahl's large-scale disk arrays, or DASD's. | |
462 SPG has joint ventures with Japanese companies, and decided | |
463 in late 1994 to contract out for work on XEmacs in order | |
464 to hasten the development of Mule support (i.e. support for | |
465 Japanese, Chinese, etc.) in XEmacs and as a gesture of goodwill | |
466 towards the XEmacs community for all the work they have done | |
467 on making a powerful, modern, freely available text editor. | |
468 Through this contract, Amdahl provided a large amount of work | |
469 in XEmacs in the form of rewriting the basic text-processing | |
470 mechanisms to allow for Mule support and writing a large | |
471 amount of the support for multiple devices. | |
472 | |
473 Although Amdahl is no longer hiring a full-time contractor, | |
474 they are still funding part-time work on XEmacs and providing | |
475 resources for further XEmacs development.") | |
476 | |
477 (insert "\n\n\n\t") | |
478 (about-face "The INS Engineering point of view" 'italic) | |
479 (insert " | |
480 | |
481 INS Engineering Corporation, based in Tokyo, bought rights | |
482 to sell Energize when Lucid went out of business. Unhappy | |
483 with the performance of the Japanese support in XEmacs 19.11, | |
484 INS also contributed to the XEmacs development from late 1994 | |
485 to early 1995.") | |
486 | |
487 (insert "\n\n\n\t") | |
488 (insert "Click ") | |
489 (about-xref "here" prev-page "Return to previous page") | |
490 (insert " to go back to the previous page.\n\n\t") | |
491 ) | |
492 ((eq xref 'jwz) | |
493 (about-face "Jamie Zawinski" 'bold) | |
494 (insert "\t\t\"") | |
495 (about-face "So much to do, so little time." 'italic) | |
496 (insert "\"\n") | |
497 (insert "\n | |
498 Jamie Zawinski was primarily to blame for Lucid Emacs from its | |
499 inception in 1991, to 1994 when Lucid Inc. finally died. He is | |
500 now to be found at Netscape Communications, hacking on Netscape | |
501 Navigator (he did the first Unix version and the mail reader). | |
502 Thankfully his extensive sleep deprivation experiments conducted | |
503 during 1994 and 1995 are now a thing of the past, but his | |
504 predilection for dark, Gothic music remains unabated. | |
505 | |
506 Come visit his glorified .plan file at | |
507 | |
508 ") | |
509 (about-xref "http://www.netscape.com/people/jwz/" 'w3-jamie "Visit Jamie's WWW page") | |
510 (insert "\n\n\tClick ") | |
511 (about-xref "here" prev-page "Return to previous page") | |
512 (insert " to go back to the previous page.\n") | |
513 ) | |
514 ((eq xref 'cthomp) | |
515 (about-face "Chuck Thompson" 'bold) | |
516 (insert " <cthomp@xemacs.org> | |
517 | |
518 Chuck, through being in the wrong place at the right time, has | |
519 gotten stuck with being Jamie's replacement as the primary | |
520 maintainer of XEmacs. This has caused his hair to begin | |
521 falling out and quadrupled his daily coffee dosage. Though he | |
522 works at and for the University of Illinois his funding for | |
523 XEmacs work actually came from Sun Microsystems. | |
524 | |
525 He has worked on XEmacs since November 1992, which fact | |
526 occasionally gives him nightmares. As of October 1995, he no | |
527 longer works full-time on XEmacs, though he does continue as | |
528 an active maintainer. His main contributions have been the | |
529 greatly enhanced redisplay engine, scrollbar support, the | |
530 toolbars, configure support and numerous other minor features | |
531 and fixes. | |
532 | |
533 Rumors that Chuck is aka Black Francis aka Frank Black are | |
534 completely unfounded.") | |
535 | |
536 (insert "\n\n\tClick ") | |
537 (about-xref "here" prev-page "Return to previous page") | |
538 (insert " to go back to the previous page.\n") | |
539 ) | |
540 ((eq xref 'wing) | |
541 (about-face "Ben Wing" 'bold) | |
542 (insert " <wing@666.com> | |
543 | |
544 I'm not a thug -- I just play one on video. | |
545 My roommate says I'm a San Francisco \"Mission Critter\".\n\n\t") | |
546 (about-face "Gory stuff follows:" 'italic) | |
547 (insert " | |
548 | |
549 In 1992 I left a stuffy East-Coast university, set out into the | |
550 real world, and ended up a co-founder of Pearl Software. As | |
551 part of this company, I became the principal architect of | |
552 Win-Emacs, a port of Lucid Emacs to Microsoft Windows and | |
553 Windows NT (for more info, e-mail to ") | |
554 (about-face "info@pearlsoft.com" 'italic) | |
555 (insert "). | |
556 | |
557 Since April 1993, I've worked on XEmacs as a contractor | |
558 for various companies, changing hats faster than Ronald Reagan's | |
559 hair color (oops, did I just show my age?). My main contributions | |
560 to XEmacs include rewriting large parts of the internals and the | |
561 gory Xt/Xlib interfacing, adding the Mule support, implementing | |
562 the external client widget, improving the documentation (especially | |
563 the Emacs Lisp manual), and being a general nuisance ... er, | |
564 brainstormer for many of the new features of XEmacs. | |
565 | |
566 Recently I took a job at Dimension X, where I'm working on a | |
567 Java-based toolkit for developing VRML applications.") | |
568 (insert "\n\n\tClick ") | |
569 (about-xref "here" prev-page "Return to previous page") | |
570 (insert " to go back to the previous page.\n") | |
571 ) | |
572 ((eq xref 'mly) | |
573 (about-face "Richard Mlynarik" 'bold) | |
574 (insert " <mly@adoc.xerox.com> | |
575 | |
576 Cars are Evil. Ride a bike.") | |
577 | |
578 (insert "\n\n\tClick ") | |
579 (about-xref "here" prev-page "Return to previous page") | |
580 (insert " to go back to the previous page.\n") | |
581 ) | |
582 ((eq xref 'vladimir) | |
583 (about-face "Vladimir Ivanovic" 'bold) | |
584 (insert " <vladimir@mri.com> | |
585 | |
586 Former technical lead for XEmacs at DevPro (formerly SunPro), | |
587 a division of Sun Microsystems. He is now with Microtec | |
588 Research Inc., working on embedded systems development | |
589 tools.") | |
590 | |
591 (insert "\n\n\tClick ") | |
592 (about-xref "here" prev-page "Return to previous page") | |
593 (insert " to go back to the previous page.\n") | |
594 ) | |
595 | |
596 ((eq xref 'baw) | |
597 (about-face "Barry Warsaw" 'bold) | |
598 (insert " <bwarsaw@cnri.reston.va.us> | |
599 | |
600 Author of cc-mode for C++, C, and Objective-C editing, and | |
601 Supercite for mail and news citing. Also various and sundry other | |
602 Emacs utilities, fixes, enhancements and kludgery as whimsy, | |
603 boredom, and ToT dictate (but not necessarily in that order). | |
604 | |
605 | |
606 Daddy | |
607 © 1994 Warsaw | |
608 ======== | |
609 Drive me Daddy, drive me quick | |
610 Push my pedal, shift my stick | |
611 Fill me up with golden gas | |
612 My rubber squeals, I go real fast | |
613 | |
614 Milk me Daddy, milk me now | |
615 Milk me like a big ol' cow | |
616 I've got milk inside my udder | |
617 Churn it up and make some butter") | |
618 | |
619 (insert "\n\n\tClick ") | |
620 (about-xref "here" prev-page "Return to previous page") | |
621 (insert " to go back to the previous page.\n") | |
622 ) | |
623 | |
624 ((eq xref 'bw) | |
625 (about-face "Bob Weiner" 'bold) | |
626 (insert " <weiner@mot.com> | |
627 | |
628 Author of the Hyperbole everyday information management | |
629 hypertext system and the OO-Browser multi-language code | |
630 browser. He also designed the InfoDock integrated tool | |
631 framework for software engineers. It runs atop XEmacs and is | |
632 available from \"/anonymous@ftp.xemacs.org:pub/infodock\". | |
633 His interests include user interfaces, information management, | |
634 CASE tools, communications and enterprise integration.") | |
635 | |
636 (insert "\n\n\tClick ") | |
637 (about-xref "here" prev-page "Return to previous page") | |
638 (insert " to go back to the previous page.\n") | |
639 ) | |
640 | |
641 ((eq xref 'piper) | |
642 (about-face "Andy Piper" 'bold) | |
643 (insert " <andyp@parallax.co.uk> | |
644 | |
645 Author of the original \"fake\" XEmacs toolbar, and outl-mouse for | |
646 mouse gesture based outlining. Accomplished kludge contributor.") | |
647 | |
648 (insert "\n\n\tClick ") | |
649 (about-xref "here" prev-page "Return to previous page") | |
650 (insert " to go back to the previous page.\n") | |
651 ) | |
652 | |
653 ((eq xref 'stig) | |
654 (about-face "Jonathan Stigelman" 'bold) | |
655 (insert " <stig@hackvan.com> | |
656 | |
657 Stig is sort of a tool fetishist. He has a hate/love relationship | |
658 with computers and he hacks on XEmacs because it's a good tool that | |
659 makes computers somewhat less of a nuisance. Besides XEmacs, Stig | |
660 especially likes his Leatherman, his Makita, and his lockpicks. | |
661 Stig wants a MIG welder and air tools. | |
662 | |
663 Stig likes to perch, hang from the ceiling, and climb on the walls. | |
664 Stig has a cool van. Stig would like to be able to telecommute | |
665 from, say, the north rim of the Grand Canyon or the midst of Baja.") | |
666 | |
667 (insert "\n\n\tClick ") | |
668 (about-xref "here" prev-page "Return to previous page") | |
669 (insert " to go back to the previous page.\n") | |
670 ) | |
671 | |
672 ((eq xref 'wmperry) | |
673 (about-face "William Perry" 'bold) | |
674 (insert " <wmperry@spry.com> | |
675 | |
676 Author of Emacs-w3, the builtin web browser that comes with XEmacs, | |
677 and various additions to the C code (e.g. the database support, | |
678 the PNG support, some of the GIF/JPEG support, the strikethru | |
679 face attribute support). | |
680 | |
681 He is currently working on adding really cool stylesheets to the | |
682 web, which will stress the new capabilities of XEmacs to the limit. | |
683 | |
684 He only gets paid for working on an HTTP server for Spry, but will | |
685 hack emacs for beer.") | |
686 | |
687 (insert "\n\n\tClick ") | |
688 (about-xref "here" prev-page "Return to previous page") | |
689 (insert " to go back to the previous page.\n") | |
690 ) | |
691 | |
692 ((eq xref 'others) | |
693 (insert "Click ") | |
694 (about-xref "here" 'about "Return to previous page") | |
695 (insert " to go back to the previous page\n\n\t") | |
696 | |
697 (about-face "Other Contributors to XEmacs" 'italic) | |
698 | |
699 (insert " | |
700 | |
701 Like most free software, XEmacs is a collaborative effort. | |
702 These are some of the contributors; we have no doubt forgotten | |
703 someone; we apologize! You can see some of our faces further below. | |
704 | |
705 Martin Buchholz <Martin.Buchholz@sun.com> | |
706 Technical lead for XEmacs at DevPro (formerly SunPro), a | |
707 division of Sun Microsystems. Martin used to do XEmacs as a | |
708 `hobby' while at IBM, and was crazy enough to try to do it | |
709 for a living at Sun. Martin is currently working mostly on | |
710 Internationalization. | |
711 | |
712 ") (about-xref "Vladimir Ivanovic" 'vladimir "Find out more about Vladimir Ivanovic") (insert " <vladimir@mri.com> | |
713 Former technical lead for XEmacs at Sun Microsystems. He is | |
714 now with Microtec Research Inc., working on embedded systems | |
715 development tools. | |
716 | |
717 ") (about-xref "Jonathan Stigelman" 'stig "Find out more about Jonathan Stigelman") (insert " <stig@hackvan.com> | |
718 Peripatetic uninominal Emacs hacker. Stig sometimes operates | |
719 out of a big white van set up for nomadic living and hacking. | |
720 Implemented the faster stay-up Lucid menus and hyper-apropos. | |
721 Contributor of many dispersed improvements in the core Lisp code, | |
722 and back-seat contributor for several of it's major packages. | |
723 | |
724 ") (about-xref "Barry Warsaw" 'baw "Find out more about Barry Warsaw") (insert " <bwarsaw@cnri.reston.va.us> | |
725 Author of cc-mode for C++, C, and Objective-C editing, and | |
726 Supercite for mail and news citing. Also various and sundry other | |
727 Emacs utilities, fixes, enhancements and kludgery as whimsy, | |
728 boredom, and ToT dictate (but not necessarily in that order). | |
729 | |
730 ") (about-xref "Andy Piper" 'piper "Find out more about Andy Piper") (insert " <andyp@parallax.co.uk> | |
731 Created the prototype for the toolbars. Has been the first to make | |
732 use of many of the new XEmacs graphics features. | |
733 | |
734 ") (about-xref "Bob Weiner" 'bw "Find out more about Bob Weiner") (insert " <weiner@mot.com> | |
735 Author of the Hyperbole everyday information management | |
736 hypertext system and the OO-Browser multi-language code | |
737 browser. He also designed the InfoDock integrated tool | |
738 framework for software engineers. It runs atop XEmacs and is | |
739 available from \"/anonymous@ftp.xemacs.org:pub/infodock\". | |
740 His interests include user interfaces, information management, | |
741 CASE tools, communications and enterprise integration. | |
742 | |
743 ") (about-xref "William Perry" 'wmperry "Find out more about Bill Perry") (insert " <wmperry@spry.com> | |
744 Author of W3, a package for browsing the World Wide Web | |
745 which is included in the standard XEmacs distribution. | |
746 Although W3 runs on all versions of Emacs, Bill has been | |
747 quick to take advantage of the unique features of XEmacs | |
748 (such as embedded images and windows). Thus, the XEmacs | |
749 version of W3 is significantly more powerful than versions | |
750 running in other Emacs variants. | |
751 | |
752 Kyle Jones <kyle@crystal.wonderworks.com> | |
753 Author of VM (View Mail), a mail-reading package that is | |
754 included in the standard XEmacs distribution, and | |
755 contributor of many improvements and bug fixes. Unlike most | |
756 other mail-reading packages, VM uses the standard Unix-mail | |
757 format for its mailboxes; thus, you can use VM concurrently | |
758 with standard mail readers such as Unix mail and ELM. | |
759 | |
760 Darrell Kindred <Darrell.Kindred@cmu.edu> | |
761 Unofficial maintainer of the xemacs-beta list of extant | |
762 bugs and contributor of an extraordinary number of | |
763 important bug fixes, many of them in areas that neither | |
764 Chuck nor Ben was particularly enthusiastic about | |
765 investigating. | |
766 | |
767 Eduardo Pelegri-Llopart <pelegri@eng.sun.com> | |
768 Author of EOS, a package included in the standard XEmacs | |
769 distribution that integrates XEmacs with the SPARCworks | |
770 development environment from SunPro. Past lead for XEmacs | |
771 at SunPro; advocated the validity of using Epoch, and later | |
772 Lemacs, at SunPro through several early prototypes. | |
773 | |
774 Matthieu Devin <devin@rs.com> | |
775 Part of the original (pre-19.0) Lucid Emacs development team. | |
776 Matthieu wrote the initial Energize interface, designed the | |
777 toolkit-independent Lucid Widget library, and fixed enough | |
778 redisplay bugs to last a lifetime. The features in Lucid | |
779 Emacs were largely inspired by Matthieu's initial prototype | |
780 of an Energize interface using Epoch. | |
781 | |
782 Harlan Sexton <hbs@odi.com> | |
783 Part of the original (pre-19.0) Lucid Emacs development team. | |
784 Harlan designed and implemented many of the low level data | |
785 structures which are original to the Lucid version of Emacs, | |
786 including extents and hash tables. | |
787 | |
788 Eric Benson <eb@kaleida.com> | |
789 Part of the original (pre-19.0) Lucid Emacs development team. | |
790 Eric played a big part in the design of many aspects of the | |
791 system, including the new command loop and keymaps, fixed | |
792 numerous bugs, and has been a reliable beta tester ever | |
793 since. | |
794 | |
795 John Rose <john.rose@sun.com> | |
796 Author of many extensions to the `extents' code, including | |
797 the initial implementation of `duplicable' properties. | |
798 | |
799 Hans Muller <hmuller@eng.sun.com> | |
800 Author of the code used to connect XEmacs with ToolTalk, | |
801 and of an early client of the external Emacs widget. | |
802 | |
803 In addition to those just mentioned, the following people have | |
804 spent a great deal of effort providing feedback, testing beta | |
805 versions of XEmacs, providing patches to the source code, | |
806 or doing all of the above. We couldn't have done it without | |
807 them. | |
808 | |
809 Nagi M. Aboulenein <aboulene@ponder.csci.unt.edu> | |
810 Gary Adams <gra@zeppo.East.Sun.COM> | |
811 Gennady Agranov <agranov@csa.CS.Technion.Ac.IL> | |
812 Mark Allender <allender@vnet.IBM.COM> | |
813 Butch Anton <butch@zaphod.uchicago.edu> | |
814 Fred Appelman <Fred.Appelman@cv.ruu.nl> | |
815 Tor Arntsen <tor@spacetec.no> | |
816 Mike Battaglia <mbattagl@dsccc.com> | |
817 Steven L Baur <steve@miranova.com> | |
818 Neal Becker <neal@ctd.comsat.com> | |
819 Paul Bibilo <peb@delcam.com> | |
820 Jan Borchers <job@tk.uni-linz.ac.at> | |
821 Mark Borges <mdb@cdc.noaa.gov> | |
822 David P. Boswell <daveb@tau.space.thiokol.com> | |
823 Tim Bradshaw <tfb@edinburgh.ac.uk> | |
824 Rick Braumoeller <rickb@mti.sgi.com> | |
825 Matthew J. Brown <mjb@doc.ic.ac.uk> | |
826 Alastair Burt <burt@dfki.uni-kl.de> | |
827 Rick Busdiecker <rfb@lehman.com> | |
828 Richard Caley <rjc@cstr.edinburgh.ac.uk> | |
829 Stephen Carney <carney@gvc.dec.com> | |
830 Philippe Charton <charton@lmd.ens.fr> | |
831 Peter Cheng <peter.cheng@sun.com> | |
832 Jin S. Choi <jin@atype.com> | |
833 Serenella Ciongoli <czs00@ladybug.oes.amdahl.com> | |
834 Richard Cognot <cognot@ensg.u-nancy.fr> | |
835 Andy Cohen <cohen@andy.bu.edu> | |
836 Christopher Davis <ckd@kei.com> | |
837 Michael Diers <mdiers@logware.de> | |
838 William G. Dubuque <wgd@martigny.ai.mit.edu> | |
839 Samuel J. Eaton <samuele@cogs.susx.ac.uk> | |
840 Carl Edman <cedman@Princeton.EDU> | |
841 Dave Edmondson <davided@sco.com> | |
842 Eric Eide <eeide@asylum.cs.utah.edu> | |
843 David Fletcher <frodo@tsunami.com> | |
844 Paul Flinders <ptf@delcam.co.uk> | |
845 Jered J Floyd <jered@mit.edu> | |
846 Jerry Frain <jerry@sneffels.tivoli.com> | |
847 Benjamin Fried <bf@morgan.com> | |
848 Barry Friedman <friedman@bnr.ca> | |
849 Lew Gaiter III <lew@StarFire.com> | |
850 Tim Geisler <Tim.Geisler@informatik.uni-muenchen.de> | |
851 Dave Gillespie <daveg@synaptics.com> | |
852 Christian F. Goetze <cg@bigbook.com> | |
853 Wolfgang Grieskamp <wg@cs.tu-berlin.de> | |
854 James Grinter <jrg@demon.net> | |
855 Ben Gross <bgross@uiuc.edu> | |
856 Dirk Grunwald <grunwald@foobar.cs.Colorado.EDU> | |
857 Dipankar Gupta <dg@hplb.hpl.hp.com> | |
858 Markus Gutschke <gutschk@GOEDEL.UNI-MUENSTER.DE> | |
859 Adam Hammer <hammer@cs.purdue.edu> | |
860 Magnus Hammerin <magnush@epact.se> | |
861 ChangGil Han <cghan@phys401.phys.pusan.ac.kr> | |
862 Derek Harding <dharding@lssec.bt.co.uk> | |
863 John Haxby <J.Haxby@isode.com> | |
864 Jareth \"JHod\" Hein <jhod@po.iijnet.or.jp> | |
865 Benedikt Heinen <beh@icemark.thenet.ch> | |
866 Stephan Herrmann <sh@first.gmd.de> | |
867 Charles Hines <chuck_hines@VNET.IBM.COM> | |
868 David Hughes <djh@harston.cv.com> | |
869 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> | |
870 Andrew Innes <andrewi@harlequin.co.uk> | |
871 Markku Jarvinen <Markku.Jarvinen@simpukka.funet.fi> | |
872 Robin Jeffries <robin.jeffries@sun.com> | |
873 Philip Johnson <johnson@uhics.ics.Hawaii.Edu> | |
874 J. Kean Johnston <jkj@paradigm-sa.com> | |
875 Doug Keller <dkeller@vnet.ibm.com> | |
876 Gregor Kennedy <gregork@dadd.ti.com> | |
877 Michael Kifer <kifer@cs.sunysb.edu> | |
878 Yasuhiko Kiuchi <kiuchi@dsp.ksp.fujixerox.co.jp> | |
879 Jens Lautenbacher <jens@lemcbed.lem.uni-karlsruhe.de> | |
880 Simon Leinen <simon@instrumatic.ch> | |
881 James LewisMoss <moss@cs.sc.edu> | |
882 Mats Lidell <mats.lidell@contactor.se> | |
883 Matt Liggett <mliggett@seven.ucs.indiana.edu> | |
884 Christian Limpach <Christian.Limpach@nice.ch> | |
885 Robert Lipe <robertl@arnet.com> | |
886 Damon Lipparelli <lipp@aa.net> | |
887 Hamish Macdonald <hamish@bnr.ca> | |
888 Ian MacKinnon <imac@rd.abs.alcatel.co.uk> | |
889 Patrick MacRoberts <macro@hpcobr30.cup.hp.com> | |
890 Tonny Madsen <Tonny.Madsen@netman.dk> | |
891 Ketil Z Malde <ketil@ii.uib.no> | |
892 Steve March <smarch@quaver.urbana.mcd.mot.com> | |
893 Simon Marshall <Simon.Marshall@mail.esrin.esa.it> | |
894 Dave Mason <dmason@plg.uwaterloo.ca> | |
895 Jaye Mathisen <mrcpu@cdsnet.net> | |
896 Michael Meissner <meissner@osf.org> | |
897 David M. Meyer <meyer@ns.uoregon.edu> | |
898 Brad Miller <bmiller@cs.umn.edu> | |
899 John Morey <jmorey@crl.com> | |
900 Rob Mori <rob.mori@sun.com> | |
901 Heiko Muenkel <muenkel@tnt.uni-hannover.de> | |
902 Arup Mukherjee <arup+@cs.cmu.edu> | |
903 Colas Nahaboo <Colas.Nahaboo@sophia.inria.fr> | |
904 Lynn D. Newton <lynn@ives.phx.mcd.mot.com> | |
905 Georg Nikodym <Georg.Nikodym@canada.sun.com> | |
906 Andy Norman <ange@hplb.hpl.hp.com> | |
907 Joseph J. Nuspl Jr. <nuspl@cc.purdue.edu> | |
908 Kim Nyberg <kny@tekla.fi> | |
909 David Ofelt <ofelt@getalife.Stanford.EDU> | |
910 Greg Onufer <Greg.Onufer@eng.sun.com> | |
911 Achim Oppelt <aoppelt@theorie3.physik.uni-erlangen.de> | |
912 Sudeep Kumar Palat <palat@idt.unit.no> | |
913 Marc Paquette <Marc.Paquette@Softimage.com> | |
914 Jens-U H Petersen <petersen@kurims.kyoto-u.ac.jp> | |
915 Thomas A. Peterson <tap@src.honeywell.com> | |
916 Peter Pezaris <pez@dwwc.com> | |
917 Tibor Polgar <tlp00@eng.amdahl.com> | |
918 E. Rehmi Post <rehmi@asylum.sf.ca.us> | |
919 Paul M Reilly <pmr@pajato.com> | |
920 Jack Repenning <jackr@sgi.com> | |
921 Daniel Rich <drich@cisco.com> | |
922 Roland Rieke <rol@darmstadt.gmd.de> | |
923 Russell Ritchie <ritchier@msc.ie> | |
924 Mike Russell <mjruss@rchland.vnet.ibm.com> | |
925 Jan Sandquist <etxquist@iqa.ericsson.se> | |
926 Marty Sasaki <sasaki@spdcc.com> | |
927 Mike Scheidler <c23mts@eng.delcoelect.com> | |
928 Darrel Schneider <darrel@slc.com> | |
929 Hayden Schultz <haydens@ll.mit.edu> | |
930 Cotton Seed <cottons@cybercom.net> | |
931 Axel Seibert <seiberta@informatik.tu-muenchen.de> | |
932 Odd-Magne Sekkingstad <oddms@ii.uib.no> | |
933 John Shen <zfs60@cas.org> | |
934 Jeffrey Sparkes <jsparkes@bnr.ca> | |
935 Michael Sperber <sperber@informatik.uni-tuebingen.de> | |
936 Manoj Srivastava <srivasta@pilgrim.umass.edu> | |
937 Francois Staes <frans@kiwi.uia.ac.be> | |
938 Jason Stewart <jasons@cs.unm.edu> | |
939 Rick Tait <rickt@gnu.ai.mit.edu> | |
940 James Thompson <thompson@wg2.waii.com> | |
941 Morioka Tomohiko <morioka@jaist.ac.jp> | |
942 Raymond L. Toy <toy@rtp.ericsson.se> | |
943 John Turner <turner@xdiv.lanl.gov> | |
944 Vladimir Vukicevic <vladimir@intrepid.com> | |
945 Peter Ware <ware@cis.ohio-state.edu> | |
946 Yoav Weiss <yoav@zeus.datasrv.co.il> | |
947 Rod Whitby <rwhitby@asc.corp.mot.com> | |
948 Rich Williams <rdw@hplb.hpl.hp.com> | |
949 David C Worenklein <dcw@gcm.com> | |
950 Takeshi Yamada <yamada@sylvie.kecl.ntt.jp> | |
951 Jason Yanowitz <yanowitz@eternity.cs.umass.edu> | |
952 La Monte Yarroll <piggy@hilbert.maths.utas.edu.au> | |
953 Blair Zajac <blair@olympia.gps.caltech.edu> | |
954 Daniel Zivkovic <daniel@canada.sun.com> | |
955 Karel Zuiderveld <Karel.Zuiderveld@cv.ruu.nl> | |
956 and the makers of Jolt Cola (tm)") | |
957 (goto-char (point-min)) | |
958 (while (re-search-forward "^[ \t]*\\([^<>\n]+\\) <[^>\n]+>$" | |
959 nil t) | |
960 (set-extent-face (make-extent (match-beginning 1) (match-end 1)) | |
961 'bold)) | |
962 (goto-char (point-min)) | |
963 (while (re-search-forward "^[ \t]*<\\([^>\n]+\\)>$" nil t) | |
964 (set-extent-face (make-extent (match-beginning 1) (match-end 1)) | |
965 'bold)) | |
966 | |
967 (goto-char (point-max)) | |
968 (insert "\n") | |
969 (about-add-mosaic) | |
970 (goto-char (point-max)) | |
971 (insert "\n\n\tClick ") | |
972 (about-xref "here" 'about "Return to previous page") | |
973 (insert " to go back to the previous page.\n") | |
974 ) | |
975 ((eq xref 'features) | |
976 (insert "Click ") | |
977 (about-xref "here" 'about "Return to previous page") | |
978 (insert " to go back to the previous page\n\n\t") | |
979 | |
980 (about-face "New Features in XEmacs" 'bold-italic) | |
981 | |
982 (insert "\n | |
983 * A real toolbar. | |
984 * Proper integration with Xt and Motif (including Motif menubars | |
985 and scrollbars). Motif look-alike menubars and scrollbars | |
986 are provided for those systems without real Motif support. | |
987 * Face support on TTY's, including color. | |
988 * Horizontal and vertical scrollbars in all windows. | |
989 * Support for variable-width and variable height fonts. | |
990 * Support for display on multiple simultaneous X and/or TTY devices. | |
991 * Support for arbitrary pixmaps in a buffer. | |
992 * Access to the ToolTalk API. | |
993 * Support for using XEmacs frames as Xt widgets. | |
994 * Support for overlapping regions (or extents) and efficient handling | |
995 of a large number of such extents in a single buffer. | |
996 * Powerful, flexible control over the display characteristics | |
997 of most of the visual aspects of XEmacs through the use | |
998 of specifiers, which allow separate values to be specified | |
999 for individual buffers, windows, frames, devices, device classes, | |
1000 and device types. | |
1001 * A clean interface to the menubar, window-system events, and key | |
1002 combinations.")) | |
1003 )) | |
1004 (goto-char (point-min)) | |
1005 )))) |