XEmacs 21.2.45 "Thelxepeia".
[chise/xemacs-chise.git.1] / lisp / about.el
1 ;;; about.el --- the About The Authors page (shameless self promotion).
2
3 ;; Copyright (c) 1997 Free Software Foundation, Inc.
4
5 ;; Keywords: extensions
6 ;; Version: 2.4
7 ;; Maintainer: Hrvoje Niksic <hniksic@xemacs.org>
8
9 ;; This file is part of XEmacs.
10
11 ;; XEmacs is free software; you can redistribute it and/or modify it
12 ;; under the terms of the GNU General Public License as published by
13 ;; the Free Software Foundation; either version 2, or (at your option)
14 ;; any later version.
15
16 ;; XEmacs is distributed in the hope that it will be useful, but
17 ;; WITHOUT ANY WARRANTY; without even the implied warranty of
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19 ;; General Public License for more details.
20
21 ;; You should have received a copy of the GNU General Public License
22 ;; along with XEmacs; see the file COPYING.  If not, write to the
23 ;; Free Software Foundation, 59 Temple Place - Suite 330,
24 ;; Boston, MA 02111-1307, USA.
25
26 ;;; Synched up with: Not in FSF.
27
28 ;; Original code: Jamie Zawinski <jwz@jwz.org>
29 ;; Text: Ben Wing <ben@xemacs.org>, Jamie Zawinski <jwz@jwz.org>
30 ;; Hard: Amiga 1000, Progressive Peripherals Frame Grabber.
31 ;; Soft: FG 2.0, DigiPaint 3.0, pbmplus (dec 91), xv 3.0.
32 ;; Modified for 19.11 by Eduardo Pelegri-Llopart <pelegri@eng.sun.com>
33 ;;                    and Chuck Thompson <cthomp@xemacs.org>
34 ;; More hacking for 19.12 by Chuck Thompson and Ben Wing.
35 ;; 19.13 and 19.14 updating done by Chuck Thompson.
36 ;; 19.15 and 20.0 updating done by Steve Baur and Martin Buchholz.
37
38 ;; Completely rewritten for 20.3 by Hrvoje Niksic <hniksic@xemacs.org>.
39 ;; The original had no version numbers; I numbered the rewrite as 2.0.
40
41 ;; Many things in this file are to gag.  Ideally, we should just use
42 ;; HTML (or some other extension, e.g. info) for this sort of thing.
43 ;; However, W3 loads too long and is too large to be dumped with
44 ;; XEmacs.
45
46 ;; If you think this is ugly now -- o boy, you should have seen it
47 ;; before.
48
49 (require 'wid-edit)
50
51 ;; People in this list have their individual links from the main page,
52 ;; or from the `Legion' page.  If they have an image, it should be
53 ;; named after the CAR of the list element (baw -> baw.png).
54 ;;
55 ;; If you add to this list, you'll want to update
56 ;; `about-maintainer-info' (and maybe `about-hackers'.
57 (defvar xemacs-hackers
58   '((ajc      "Andrew Cosgriff"   "ajc@bing.wattle.id.au")
59     (aj       "Andreas Jaeger"    "aj@suse.de")
60     (baw      "Barry Warsaw"      "bwarsaw@python.org")
61     (bw       "Bob Weiner"        "weiner@beopen.com")
62     (chr      "Christian Nybø"    "chr@mediascience.no")
63     (cthomp   "Chuck Thompson"    "cthomp@xemacs.org")
64     (dmoore   "David Moore"       "dmoore@ucsd.edu")
65     (dkindred "Darrell Kindred"   "dkindred@cmu.edu")
66     (dv       "Didier Verna"      "didier@xemacs.org")
67     (hniksic  "Hrvoje Niksic"     "hniksic@xemacs.org")
68         (jan      "Jan Vroonhof"      "jan@xemacs.org")
69     (jareth   "Jareth Hein"       "jareth@camelot.co.jp")
70     (jason    "Jason R. Mastaler" "jason@xemacs.org")
71     (jens     "Jens Lautenbacher" "jens@lemcbed.lem.uni-karlsruhe.de")
72     (jmiller  "Jeff Miller"       "jmiller@smart.net")
73     (juhp     "Jens-Ulrik Holger Petersen" "petersen@kurims.kyoto-u.ac.jp")
74     (jwz      "Jamie Zawinski"    "jwz@jwz.org")
75     (kazz     "IENAGA Kazuyuki"   "ienaga@xemacs.org")
76     (kyle     "Kyle Jones"        "kyle_jones@wonderworks.com")
77     (larsi    "Lars Magne Ingebrigtsen" "larsi@gnus.org")
78     (marcpa   "Marc Paquette"     "marcpa@CAM.ORG")
79     (mcook    "Michael R. Cook"   "mcook@cognex.com")
80     (mly      "Richard Mlynarik"  "mly@adoc.xerox.com")
81     (morioka  "MORIOKA Tomohiko"  "morioka@jaist.ac.jp")
82     (martin   "Martin Buchholz"   "martin@xemacs.org")
83     (ograf    "Oliver Graf"       "ograf@fga.de")
84     (pez      "Peter Pezaris"     "pez@dwwc.com")
85     (piper    "Andy Piper"        "andy@xemacs.org")
86     (rickc    "Rick Campbell"     "rickc@lehman.com")
87     (rossini  "Anthony Rossini"   "rossini@stat.sc.edu")
88     (vin      "Vin Shelton"       "acs@acm.org")
89     (sperber  "Michael Sperber"   "sperber@informatik.uni-tuebingen.de")
90     (slb      "SL Baur"           "steve@xemacs.org")
91     (stig     "Jonathan Stigelman" "stig@hackvan.com")
92     (stigb    "Stig Bjorlykke"    "stigb@tihlde.hist.no")
93     (thiessel "Marcus Thiessel"   "marcus@xemacs.org")
94     (vladimir "Vladimir Ivanovic" "vladimir@acm.com")
95     (wing     "Ben Wing"          "ben@xemacs.org")
96     (wmperry  "William Perry"     "wmperry@aventail.com"))
97   "Alist of XEmacs hackers.")
98
99 ;; The CAR of alist elements is a valid argument to `about-url-link'.
100 ;; It is preferred to a simple string, because it makes maintenance
101 ;; easier.  Please add new URLs to this list.
102 (defvar about-url-alist
103   '((ajc        . "http://www-personal.monash.edu.au/~ajc/")
104     (beopen     . "http://www.beopen.com/")
105     (ben        . "http://www.666.com/ben/")
106     (ben-xemacs . "http://www.666.com/xemacs/")
107     (baw        . "http://www.python.org/~bwarsaw/")
108     (cc-mode    . "http://www.python.org/ftp/emacs/")
109     (chr        . "http://www.xemacs.org/faq/")
110     (dkindred   . "http://www.cs.cmu.edu/People/dkindred/me.html")
111     (dmoore     . "http://oj.egbt.org/dmoore/")
112     (dv         . "http://www.lrde.epita.fr/~didier/")
113     (jason      . "http://www.mastaler.com/")
114     (juhp       . "http://www.kurims.kyoto-u.ac.jp/~petersen/")
115     (jwz        . "http://www.jwz.org/")
116     (kazz       . "http://www.imasy.or.jp/~kazz/")
117     (kyle       . "http://www.wonderworks.com/kyle/")
118     (larsi      . "http://www.ifi.uio.no/~larsi/")
119     (marcpa     . "http://www.positron911.com/products/power.htm")
120     (ograf      . "http://www.fga.de/~ograf/")
121     (pez        . "http://www.dwwc.com/")
122     (piper      . "http://www.xemacs.freeserve.co.uk/")
123     (vin        . "http://www.upa.org/")
124     (stigb      . "http://www.tihlde.hist.no/~stigb/")
125     (wget       . "ftp://gnjilux.cc.fer.hr/pub/unix/util/wget/")
126     (xemacs     . "http://www.xemacs.org/"))
127   "Some of the more important URLs.")
128
129 (defvar about-left-margin 3)
130
131 ;; Insert a URL link to the buffer.
132 (defun about-url-link (what &optional echo)
133   (or (stringp what)
134       (setq what (cdr (assq what about-url-alist))))
135   (assert what)
136   (widget-create 'url-link
137                  :button-prefix ""
138                  :button-suffix ""
139                  :help-echo echo
140                  what))
141
142 ;; Attach a face to a string, in order to be inserted into the buffer.
143 ;; Make sure that the extent is duplicable, but unique.  Returns the
144 ;; string.
145 (defun about-with-face (string face)
146   (let ((ext (make-extent 0 (length string) string)))
147     (set-extent-property ext 'duplicable t)
148     (set-extent-property ext 'unique t)
149     (set-extent-property ext 'start-open t)
150     (set-extent-property ext 'end-open t)
151     (set-extent-face ext face))
152   string)
153
154 ;; Switch to buffer NAME.  If it doesn't exist, make it and switch to it.
155 (defun about-get-buffer (name)
156   (cond ((get-buffer name)
157          (switch-to-buffer name)
158          (delete-other-windows)
159          (goto-char (point-min))
160          name)
161         (t
162          (switch-to-buffer name)
163          (delete-other-windows)
164          (buffer-disable-undo)
165          (set-specifier left-margin-width about-left-margin (current-buffer))
166          nil)))
167
168 ;; Set up the stuff needed by widget.  Allowed types are `bury' and
169 ;; `kill'.
170 (defun about-finish-buffer (&optional type)
171   (or type (setq type 'bury))
172   (widget-insert "\n")
173   (if (eq type 'bury)
174       (widget-create 'link :help-echo "Bury buffer"
175                      :action (lambda (&rest ignore)
176                                (bury-buffer))
177                      "Remove")
178     (widget-create 'link :help-echo "Kill buffer"
179                    :action (lambda (&rest ignore)
180                              (kill-buffer (current-buffer)))
181                    "Kill"))
182   (widget-insert " this buffer.\n")
183   (use-local-map (make-sparse-keymap))
184   (set-keymap-parent (current-local-map) widget-keymap)
185   (if (eq type 'bury)
186       (progn
187         (local-set-key "q" 'bury-buffer)
188         (local-set-key "l" 'bury-buffer))
189     (let ((dispose (lambda () (interactive) (kill-buffer (current-buffer)))))
190       (local-set-key "q" dispose)
191       (local-set-key "l" dispose)))
192   (local-set-key " " 'scroll-up)
193   (local-set-key "\177" 'scroll-down)
194   (widget-setup)
195   (goto-char (point-min))
196   (toggle-read-only 1)
197   (set-buffer-modified-p nil))
198
199 ;; Make the appropriate number of spaces.
200 (defun about-center (string-or-glyph)
201   (let ((n (- (startup-center-spaces string-or-glyph) about-left-margin)))
202     (make-string (if (natnump n) n 0) ?\ )))
203
204 ;; Main entry page.
205
206 ;;;###autoload
207 (defun about-xemacs ()
208   "Describe the True Editor and its minions."
209   (interactive)
210   (unless (about-get-buffer "*About XEmacs*")
211     (widget-insert (about-center xemacs-logo))
212     (widget-create 'default
213                    :format "%t"
214                    :tag-glyph xemacs-logo)
215     (widget-insert "\n")
216     (let* ((emacs-short-version (format "%d.%d"
217                                         emacs-major-version
218                                         emacs-minor-version))
219            (emacs-about-version (format "version %s; Aug 1998"
220                                         emacs-short-version)))
221       (widget-insert (about-center emacs-about-version))
222       (widget-create 'link :help-echo "The latest NEWS of XEmacs"
223                      :action 'about-news
224                      emacs-about-version))
225
226     (widget-insert
227      "\n\n"
228      (about-with-face "XEmacs" 'italic)
229      " (formerly known as "
230      (about-with-face "Lucid Emacs" 'italic)
231      ") is a powerful, extensible text
232 editor with full GUI support, initially based on an early version of\n"
233      (about-with-face "GNU Emacs 19" 'italic)
234      " from the Free Software Foundation and since kept up to
235 date with recent versions of that product.  XEmacs stems from a\n")
236     (widget-create 'link :help-echo "An XEmacs history lesson"
237                    :action 'about-collaboration
238                    :button-prefix ""
239                    :button-suffix ""
240                    "collaboration")
241     (widget-insert
242      " of Lucid, Inc. with Sun Microsystems, Inc. and the
243 University of Illinois with additional support having been provided by
244 Amdahl Corporation, INS Engineering Corporation, and a huge amount of
245 volunteer effort.
246
247 XEmacs provides a great number of ")
248     (widget-create 'link :help-echo "See a list of the new features"
249                    :action 'about-features
250                    :button-prefix ""
251                    :button-suffix ""
252                    "new features")
253     (widget-insert ".  More details on
254 XEmacs's functionality, including bundled packages, can be obtained
255 through the ")
256     (widget-create 'info-link
257                    :help-echo "Browse the info system"
258                    :button-prefix ""
259                    :button-suffix ""
260                    :tag "info"
261                    "(dir)")
262
263     (widget-insert
264      " on-line information system.\n
265 The XEmacs web page can be browsed, using any WWW browser at\n
266 \t\t    ")
267     (about-url-link 'xemacs "Visit XEmacs WWW page")
268     (widget-insert "\n
269 Note that W3 (XEmacs's own browser), might need customization (due to
270 firewalls) in order to work correctly.
271
272 XEmacs is the result of the time and effort of many people.  The
273 developers responsible for this release are:\n\n")
274
275     (flet ((setup-person (who)
276             (widget-insert "\t* ")
277             (let* ((entry (assq who xemacs-hackers))
278                    (name (cadr entry))
279                    (address (caddr entry)))
280               (widget-create 'link
281                              :help-echo (concat "Find out more about " name)
282                              :button-prefix ""
283                              :button-suffix ""
284                              :action 'about-maintainer
285                              :tag name
286                              :value who)
287               (widget-insert (format "  <%s>\n" address)))))
288       ;; Setup persons responsible for this release.
289       (mapc 'setup-person '(slb hniksic kyle martin piper))
290       (widget-insert "\n\t* ")
291       (widget-create 'link :help-echo "A legion of XEmacs hackers"
292                      :action 'about-hackers
293                      :button-prefix ""
294                      :button-suffix ""
295                      "And many other contributors...")
296       (widget-insert "\n
297 Chuck Thompson was Mr. XEmacs from 19.11 through 19.14.  Ben Wing was
298 crucial to each of these releases.\n\n")
299       (setup-person 'cthomp)
300       (setup-person 'wing)
301       (widget-insert "
302 Jamie Zawinski was Mr. Lucid Emacs from 19.0 through 19.10, the last
303 release actually named Lucid Emacs.  A lot of work has been done by
304 Richard Mlynarik.\n\n")
305       (setup-person 'jwz)
306       (setup-person 'mly))
307     (about-finish-buffer)))
308
309 ;; View news
310 (defun about-news (&rest ignore)
311   (view-emacs-news)
312   (message "%s" (substitute-command-keys
313                  "Press \\[kill-buffer] to exit this buffer")))
314
315 (defun about-collaboration (&rest ignore)
316   (unless (about-get-buffer "*About Collaboration*")
317     (let ((title "Why Another Version of Emacs"))
318       (widget-insert
319        "\n"
320        (about-center title)
321        (about-with-face title 'bold)))
322     (widget-insert
323      "\n\n"
324      (about-with-face "The Lucid, Inc. Point of View"
325                       'italic)
326      " (quite outdated)\n
327 At the time of the inception of Lucid Emacs (the former name of
328 XEmacs), Lucid's latest product was Energize, a C/C++ development
329 environment.  Rather than invent (and force our users to learn) a new
330 user interface, we chose to build part of our environment on top of
331 the world's best editor, GNU Emacs.  (Though our product is
332 commercial, the work we did on GNU Emacs is free software, and is
333 useful in its own right.)
334
335 We needed a version of Emacs with mouse-sensitive regions, multiple
336 fonts, the ability to mark sections of a buffer as read-only, the
337 ability to detect which parts of a buffer have been modified, and many
338 other features.
339
340 For our purposes, the existing version of Epoch was not sufficient; it
341 did not allow us to put arbitrary pixmaps/icons in buffers, `undo' did
342 not restore changes to regions, regions did not overlap and merge
343 their attributes in the way we needed, and several other things.
344
345 We could have devoted our time to making Epoch do what we needed (and,
346 in fact, we spent some time doing that in 1990) but, since the FSF
347 planned to include Epoch-like features in their version 19, we decided
348 that our efforts would be better spent improving Emacs 19 instead of
349 Epoch.
350
351 Our original hope was that our changes to Emacs would be incorporated
352 into the \"official\" v19.  However, scheduling conflicts arose, and
353 we found that, given the amount of work still remaining to be done, we
354 didn't have the time or manpower to do the level of coordination that
355 would be necessary to get our changes accepted by the FSF.
356 Consequently, we released our work as a forked branch of Emacs,
357 instead of delaying any longer.
358
359 Roughly a year after Lucid Emacs 19.0 was released, a beta version of
360 the FSF branch of Emacs 19 was released.  The FSF version is better in
361 some areas, and worse in others, as reflects the differing focus of
362 our development efforts.
363
364 We plan to continue developing and supporting Lucid Emacs, and merging
365 in bug fixes and new features from the FSF branch as appropriate; we
366 do not plan to discard any of the functionality that we implemented
367 which RMS has chosen not to include in his version.
368
369 Certain elements of Lucid Emacs, or derivatives of them, have been
370 ported to the FSF version.  We have not been doing work in this
371 direction, because we feel that Lucid Emacs has a cleaner and more
372 extensible substrate, and that any kind of merger between the two
373 branches would be far easier by merging the FSF changes into our
374 version than the other way around.
375
376 We have been working closely with the Epoch developers to merge in the
377 remaining Epoch functionality which Lucid Emacs does not yet have.
378 Epoch and Lucid Emacs will soon be one and the same thing.  Work is
379 being done on a compatibility package which will allow Epoch 4 code to
380 run in XEmacs with little or no change.\n\n"
381      (about-with-face "The Sun Microsystems, Inc. Point of View"
382                       'italic)
383      "\n
384 Emacs 18 has been around for a long, long time.  Version 19 was
385 supposed to be the successor to v18 with X support.  It was going to
386 be available \"real soon\" for a long time (some people remember
387 hearing about v19 as early as 1984!), but it never came out.  v19
388 development was going very, very slowly, and from the outside it
389 seemed that it was not moving at all.  In the meantime other people
390 gave up waiting for v19 and decided to build their own X-aware
391 Emacsen.  The most important of these was probably Epoch, which came
392 from the University of Illinois (\"UofI\") and was based on v18.
393
394 Around 1990, the Developer Products group within Sun Microsystems
395 Inc., decided that it wanted an integrated editor.  (This group is now
396 known as DevPro.  It used to be known as SunPro - the name was changed
397 in mid-1994.)  They contracted with the University of Illinois to
398 provide a number of basic enhancements to the functionality in Epoch.
399 UofI initially was planning to deliver this on top of Epoch code.
400
401 In the meantime, (actually some time before they talked with UofI)
402 Lucid had decided that it also wanted to provide an integrated
403 environment with an integrated editor.  Lucid decided that the Version
404 19 base was a better one than Version 18 and thus decided not to use
405 Epoch but instead to work with Richard Stallman, the head of the Free
406 Software Foundation and principal author of Emacs, on getting v19 out.
407 At some point Stallman and Lucid parted ways.  Lucid kept working and
408 got a v19 out that they called Lucid Emacs 19.
409
410 After Lucid's v19 came out it became clear to us (the UofI and Sun)
411 that the right thing to do was to push for an integration of both
412 Lucid Emacs and Epoch, and to get the deliverables that Sun was asking
413 from the University of Illinois on top of this integrated platform.
414 Until 1994, Sun and Lucid both actively supported XEmacs as part of
415 their product suite and invested a comparable amount of effort into
416 it.  Substantial portions of the current code have originated under
417 the support of Sun, either directly within Sun, or at UofI but paid
418 for by Sun.  This code was kept away from Lucid for a while, but later
419 was made available to them.  Initially Lucid didn't know that Sun was
420 supporting UofI, but later Sun was open about it.
421
422 Around 1992 DevPro-originated code started showing up in Lucid Emacs,
423 starting with the infusion of the Epoch redisplay code.  The separate
424 code bases at Lucid, Sun, and the University of Illinois were merged,
425 allowing a single XEmacs to evolve from that point on.
426
427 Sun originally called the integrated product ERA, for \"Emacs
428 Rewritten Again\".  SunPro and Lucid eventually came to an agreement
429 to find a name for the product that was not specific to either
430 company.  An additional constraint that Lucid placed on the name was
431 that it must contain the word \"Emacs\" in it -- thus \"ERA\" was not
432 acceptable.  The tentatively agreed-upon name was \"XEmacs\", and this
433 has been the name of the program since version 19.11.)
434
435 As of 1997, Sun is shipping XEmacs as part of its Developer Products
436 integrated programming environment \"Sun WorkShop\".  Sun is
437 continuing to support XEmacs development, with focus on
438 internationalization and quality improvement.\n\n"
439      (about-with-face "Lucid goes under" 'italic)
440      "\n
441 Around mid-'94, Lucid went out of business.  Lucid founder Richard
442 Gabriel's book \"Patterns of Software\", which is highly recommended
443 reading in any case, documents the demise of Lucid and suggests
444 lessons to be learned for the whole software development community.
445
446 Development on XEmacs, however, has continued unabated under the
447 auspices of Sun Microsystems and the University of Illinois, with help
448 from Amdahl Corporation and INS Engineering Corporation.  Sun plans to
449 continue to support XEmacs into the future.\n\n"
450      (about-with-face "The Amdahl Corporation point of view"
451                       'italic)
452      "\n
453 Amdahl Corporation's Storage Products Group (SPG) uses XEmacs as the
454 focal point of a environment for development of the microcode used in
455 Amdahl's large-scale disk arrays, or DASD's.  SPG has joint ventures
456 with Japanese companies, and decided in late 1994 to contract out for
457 work on XEmacs in order to hasten the development of Mule support
458 \(i.e. support for Japanese, Chinese, etc.) in XEmacs and as a gesture
459 of goodwill towards the XEmacs community for all the work they have
460 done on making a powerful, modern, freely available text editor.
461 Through this contract, Amdahl provided a large amount of work in
462 XEmacs in the form of rewriting the basic text-processing mechanisms
463 to allow for Mule support and writing a large amount of the support
464 for multiple devices.
465
466 Although Amdahl is no longer hiring a full-time contractor, they are
467 still funding part-time work on XEmacs and providing resources for
468 further XEmacs development.\n\n"
469      (about-with-face "The INS Engineering point of view"
470                       'italic)
471      "\n
472 INS Engineering Corporation, based in Tokyo, bought rights to sell
473 Energize when Lucid went out of business.  Unhappy with the
474 performance of the Japanese support in XEmacs 19.11, INS also
475 contributed to the XEmacs development from late 1994 to early
476 1995.\n")
477     (about-finish-buffer)))
478
479 (defun about-features (&rest ignore)
480   (unless (about-get-buffer "*About Features*")
481     (let ((title "New features in XEmacs"))
482       (widget-insert
483        "\n"
484        (about-center title)
485        (about-with-face title 'bold)))
486     (widget-insert
487      "\n
488 * MULE (Multi-Lingual Emacs) support.  Simultaneous display of
489   multiple character sets is now possible.
490
491 * Support for arbitrary pixmaps in a buffer.
492
493 * A real toolbar.
494
495 * Horizontal and vertical scrollbars in all windows.
496
497 * Support for variable-width and variable height fonts.
498
499 * Support for display on multiple simultaneous X and/or TTY devices.
500
501 * Face support on TTY's, including color.
502
503 * Support for overlapping regions (or extents) and efficient handling
504   of a large number of such extents in a single buffer.
505
506 * Powerful, flexible control over the display characteristics of most
507   of the visual aspects of XEmacs through the use of specifiers, which
508   allow separate values to be specified for individual buffers,
509   windows, frames, devices, device classes, and device types.
510
511 * A clean interface to the menubar, window-system events, and key
512   combinations.
513
514 * Proper integration with Xt and Motif (including Motif menubars and
515   scrollbars).  Motif look-alike menubars and scrollbars are provided
516   for those systems without real Motif support.
517
518 * Text for complex languages can be entered using the XIM mechanism.
519
520 * Localization of menubar text for the Japanese locale.
521
522 * Access to the ToolTalk API.
523
524 * Support for using XEmacs frames as Xt widgets.\n\n")
525     (about-finish-buffer)))
526
527 (defvar about-glyphs nil
528   "Cached glyphs")
529
530 ;; Return a maintainer's glyph
531 (defun about-maintainer-glyph (who)
532   (let ((glyph (cdr (assq who about-glyphs))))
533     (unless glyph
534       (let ((file (expand-file-name
535                    (concat (symbol-name who)
536                            (if (memq (device-class)
537                                      '(color grayscale))
538                                "" "m")
539                            ".png")
540                    (locate-data-directory "photos")))
541             (data nil))
542         (setq glyph
543               (cond ((stringp data)
544                      (make-glyph
545                       (if (featurep 'png)
546                           `([png :data ,data]
547                             [string :data "[Image]"])
548                         `([string :data "[Image]"]))))
549                     ((eq data 'error)
550                      (make-glyph [string :data "[Error]"]))
551                     (file
552                      (make-glyph
553                       (if (featurep 'png)
554                           `([png :file ,file]
555                             [string :data "[Image]"])
556                         `([string :data "[Image]"]))))
557                     (t
558                      (make-glyph [nothing]))))
559         (set-glyph-property glyph 'baseline 100)
560         ;; Cache the glyph
561         (push (cons who glyph) about-glyphs)))
562     glyph))
563
564 ;; Insert info about a maintainer.  Add the maintainer-specific info
565 ;; here.
566 (defun about-maintainer-info (entry)
567   (ecase (car entry)
568     (slb
569      (widget-insert "\
570 Peaches Baur, 1986-1999.
571 Rest in peace")
572      (widget-insert ".\n"))
573     (martin
574      (widget-insert "\
575 Martin was the XEmacs guy at DevPro, a part of Sun Microsystems.
576 Martin used to do XEmacs as a `hobby' while at IBM, and was crazy
577 enough to try to make a living doing it at Sun.
578
579 Martin starting using Emacs originally not to edit files, but to get
580 the benefit of shell mode. He actually used to run nothing but a shell
581 buffer, and use `xterm -e vi' to edit files.  But then he saw the
582 light.  He dreams of rewriting shell mode from scratch.  Stderr should
583 show up in red!!
584
585 Martin is no longer doing XEmacs for a living, and is Just Another
586 Volunteer.\n"))
587     (hniksic
588      (widget-insert "\
589 Hrvoje is a student at the Faculty of Electrical Engineering and
590 Computing in Zagreb, Croatia, working part-time at system administration
591 at SRCE.  His hobby is hacking free software, particularly XEmacs and
592 GNU Wget, the latter being his very own creation.
593
594 His contribution to XEmacs consists of a multitude of hours spent
595 adding new features and bugs, and fixing old ones.  He dreams of
596 writing a home page.\n"))
597     (wing
598      (widget-insert
599       "\
600 I began my Emacs life in 1992 as the co-founder of the now defunct
601 Pearl Software.  As part of this company, I became the principal
602 architect of Win-Emacs, an early port of Lucid Emacs to Microsoft
603 Windows and Windows NT.
604
605 Since April 1993, I've worked on XEmacs as a contractor for various
606 companies, changing hats faster than Ronald Reagan's hair color (oops,
607 did I just show my age?).  My main contributions to XEmacs include
608 rewriting large parts of the internals and the gory Xt/Xlib
609 interfacing, adding the Mule support, implementing the external client
610 widget, improving the documentation (especially the Emacs Lisp
611 manual), and being a general nuisance ... er, brainstormer for many of
612 the new features of XEmacs.
613
614 Alas, life has not been good to me recently.  This former San Francisco
615 \"Mission Critter\" was exiled to \"Stroller Valley\" and, after a brief
616 stint developing a Java-based VRML toolkit for the now also defunct
617 Dimension X, I developed insidious hand and neck problems, and I was
618 forced to quit working.  Since then, I have been learning how to interact
619 with the computer by using foot pedals and by dictating text to other
620 people.  Recently I completed Architecting XEmacs, a web site about the
621 future of XEmacs.\n\n")
622      (widget-insert "Architecting XEmacs: ")
623      (about-url-link 'ben-xemacs "Find the miracles in store for XEmacs")
624      (widget-insert "\nBen's home page:     ")
625      (about-url-link 'ben "Visit Ben's page")
626      (widget-insert "\n"))
627     (cthomp
628      (widget-insert "\
629 Chuck, through being in the wrong place at the right time, has gotten
630 stuck with being Jamie's replacement as the primary maintainer of
631 XEmacs.  This has caused his hair to begin falling out and quadrupled
632 his daily coffee dosage.  Though he works at and for the University of
633 Illinois his funding for XEmacs work actually came from Sun
634 Microsystems.
635
636 He has worked on XEmacs since November 1992, which fact occasionally
637 gives him nightmares.  As of October 1995, he no longer works
638 full-time on XEmacs, though he does continue as an active maintainer.
639 His main contributions have been the greatly enhanced redisplay
640 engine, scrollbar support, the toolbars, configure support and
641 numerous other features and fixes.
642
643 Rumors that Chuck is aka Black Francis aka Frank Black are completely
644 unfounded.\n"))
645     (jwz
646      (widget-insert
647       "\t"
648       (about-with-face "\"So much to do, so little time.\"" 'italic)
649       "\n
650 Jamie Zawinski was primarily to blame for Lucid Emacs from its
651 inception in 1991, to 1994 when Lucid Inc. finally died.  He is now to
652 be found at Netscape Communications, hacking on Netscape Navigator (he
653 did the first Unix version and the mail and news reader).  Thankfully
654 his extensive sleep deprivation experiments conducted during 1994 and
655 1995 are now a thing of the past, but his predilection for dark,
656 Gothic music remains unabated.
657
658 Come visit his glorified .plan file at\n\n")
659      (about-url-link 'jwz "Visit Jamie's home page")
660      (widget-insert "\n"))
661     (mly
662      (widget-insert "Cars are evil.  Ride a bike.\n"))
663     (vladimir
664      (widget-insert "\
665 Former technical lead for XEmacs at Sun.  He is now with a startup
666 marketing embedded Java databases.\n"))
667     (stig
668      (widget-insert "\
669 Stig is sort of a tool fetishist.  He has a hate/love relationship
670 with computers and he hacks on XEmacs because it's a good tool that
671 makes computers somewhat less of a nuisance.  Besides XEmacs, Stig
672 especially likes his Leatherman, his Makita, and his lockpicks.  Stig
673 wants a MIG welder and air tools.
674
675 Stig likes to perch, hang from the ceiling, and climb on the walls.
676 Stig has a cool van.  Stig would like to be able to telecommute from,
677 say, the north rim of the Grand Canyon or the midst of Baja.\n"))
678     (stigb
679      (widget-insert "\
680 Currently studying computer science in Trondheim, Norway.  Full time
681 Linux user and proud of it.  XEmacs hacker light.  Maintainer of the
682 RPM package.
683
684 See:\t")
685      (about-url-link 'stigb "Visit Stig's home page"))
686     (baw
687      (widget-insert
688         "\
689 Author of CC Mode, for C, C++, Objective-C and Java editing, and
690 Supercite for mail and news citing.  Also various and sundry other
691 Emacs utilities, fixes, enhancements and kludgery as whimsy, boredom,
692 and ToT dictate (but not necessarily in that order).  See also:\n\n\t")
693      (about-url-link 'baw "Visit Barry's home page")
694      (widget-insert "\n\nand:\n\n\t")
695      (about-url-link 'cc-mode "Visit the CC Mode distribution")
696      (widget-insert "\n
697 Daddy
698 \(C) 1994 Warsaw
699 ===============
700 Drive me Daddy, drive me quick
701 Push my pedal, shift my stick
702 Fill me up with golden gas
703 My rubber squeals, I go real fast
704
705 Milk me Daddy, milk me now
706 Milk me like a big ol' cow
707 I've got milk inside my udder
708 Churn it up and make some butter\n"))
709     (piper
710      (widget-insert "\
711 Author of the original \"fake\" XEmacs toolbar, outl-mouse for mouse
712 gesture based outlining, the original CDE drag-n-drop support, the
713 cygwin port of XEmacs including unexec, glyphs under MS-Windows,
714 toolbars under MS-Windows. My home page is here:\n")
715      (about-url-link 'piper "Visit andy's home page")
716      (widget-insert "\n
717 Andy has recently rejoined the XEmacs team to help port XEmacs to
718 MS Windows operating systems.\n"))
719     (bw
720      (widget-insert "\
721 Author of the Hyperbole everyday information management hypertext
722 system and the OO-Browser multi-language code browser.  He also
723 designed the BeOpen InfoDock integrated development environment
724 for software engineers.  It runs atop XEmacs and is available from
725 his firm, BeOpen, which offers distributions, custom development,
726 support, and training packages for corporate users of XEmacs, GNU
727 Emacs and InfoDock.  See ")
728      (about-url-link 'beopen "Visit BeOpen WWW page")
729      (widget-insert ".
730
731 His interests include user interfaces, information management,
732 CASE tools, communications and enterprise integration.\n"))
733     (wmperry
734      (widget-insert "\
735 Author of Emacs-w3, the builtin web browser that comes with XEmacs,
736 and various additions to the C code (e.g. the database support, the
737 PNG support, some of the GIF/JPEG support, the strikethru face
738 attribute support).
739
740 He is currently working at Aventail, Corp. on SOCKS v5 servers.\n"))
741     (kyle
742      (widget-insert "\
743 Author of VM, a mail-reading package that is included in the standard
744 XEmacs distribution, and contributor of many improvements and bug
745 fixes.  Unlike RMAIL and MH-E, VM uses the standard UNIX mailbox
746 format for its folders; thus, you can use VM concurrently with other
747 UNIX mail readers such as Berkeley Mail and ELM.  See\n")
748      (about-url-link 'kyle "Visit Kyle's Home page")
749      (widget-insert ".\n"))
750     (larsi
751      (widget-insert "\
752 Author of Gnus the Usenet news and Mail reading package in the
753 standard XEmacs distribution, and contributor of various enhancements
754 and portability fixes.  Lars is a student at the Institute of
755 Informatics at the University of Oslo.  He is currently plumbing away
756 at his majors work at the Institute of Physics, working on an SCI
757 project connected with CASCADE and CERN and stuff.
758
759 See ")
760      (about-url-link 'larsi "Visit the Larsissistic pages")
761      (widget-insert ".\n"))
762     (marcpa
763      (widget-insert "\
764 I work for Positron Industries Inc., Public Safety Division.
765 I'm part of the team producing POWER 911, a 911 emergency response
766 system written in Modula3:\n")
767      (about-url-link 'marcpa "Visit POWER 911")
768      (widget-insert "\
769 \n\nPreviously, I worked at Softimage Inc., now a Microsoft company
770 \(eeekkk!), as a UNIX system administrator.  This is where I've been
771 converted to NT.
772
773 In a previous life, I was a programmer/sysadmin at CRIM (Centre de
774 Recherche Informatique de Montreal) for the speech recognition group.\n"))
775     (jens
776      (widget-insert "\
777 Jens did the artwork for graphics added to XEmacs 20.2 and 19.15.
778
779 I'm currently working at the University of Karlsruhe, Germany on
780 getting my diploma thesis on Supersymmetry (uuh, that's physics) done.
781 After that (and all the remaining exams) I'm looking forward to make a
782 living out of my hobbies -- computers (and graphics). But because I
783 have no deadline for the exams and XEmacs betas are released at a high
784 rate this may take some time...\n"))
785         (jan
786          (widget-insert "\
787 Jan Vroonhof has been using XEmacs since he needed to write .tex files
788 for his work as a physics and maths student at the Univerisity of Leiden.
789 His XEmacs hacking started when XEmacs kept freezing up under a his
790 window manager. He submitted a fix and has been hooked every since.
791
792 Apart from hunting down more redisplay bugs he has worked on such
793 things as improvements to the package system, implementing lazy-shot,
794 a short stint at tracking patches and currently acts as a guardian
795 of the XEmacs custom subsystem and gnuserv.
796
797 XEmacs has followed him first to Switserland where he did a maths
798 doctorate at the ETH in Zurich, working on a conjecture by Migdal on
799 the behavior of vertex corrections in Electron-Phonon theory.  Finally
800 sharing a house with his loved one, he now lives in Oxford (UK)
801 working on the Jeode Java Virtual Machine, which like XEmacs is
802 portable, implements a language, includes a non-trivial bit of
803 graphics and a garbage collector, but is multithreaded to boot!
804 Unfortunately his XEmacs time is directly limited by the amount of
805 traffic on the M40.\n"))
806     (jareth
807      (widget-insert "\
808 Jareth Hein is a mountain boy who abandoned his home state of Colorado
809 for the perpetual state of chaos known as Tokyo in a failed attempt to
810 become a cel-animator, and a more successful one to become a
811 computer-game programmer. As he happens to be bilingual (guess which
812 two?) he's been doing quite a bit of MULE hacking. He's also getting
813 his hands dirty in the graphics areas as well.\n"))
814     (morioka
815      (widget-insert "\
816 I am the author of tm-view (general MIME Viewer for GNU Emacs) and
817 major author and maintainer of tm (Tools for MIME; general MIME
818 package for GNU Emacs).  In addition, I am working to unify MULE API
819 for Emacs and XEmacs.  In XEmacs, I have ported many mule features.
820
821 I am a doctoral student at School of Information Science of JAIST
822 \(Japan Advanced Institute of Science and Technology, Hokuriku).  I'm
823 interested in Natural Language, Affordance and writing systems.\n"))
824     (dmoore
825      (widget-insert "\
826 David has contributed greatly to the quest to speed up XEmacs.  He is
827 a student in the Computer Systems Laboratory at UCSD.  When he manages
828 to have free time, he usually spends it on 200 mile bicycle rides,
829 learning german or showing people the best mail & news environment
830 he's found in 10 years.  (That'd be XEmacs, Gnus and bbdb, of course.)
831 He can be found at `druidmuck.egbt.org 4201' at various hours of the
832 day.
833
834 He has a page at ")
835      (about-url-link 'dmoore "Visit David's home page")
836      (widget-insert ".\n"))
837     (thiessel
838      (widget-insert "\
839                       All of the buildings,
840                       all of the cars
841                       were once just a dream
842                       in somebody's head.\n
843                                      P. Gabriel\n\n
844 ")
845      (widget-insert "\n"))
846     (sperber
847      (widget-insert "\
848 Mike ported EFS to XEmacs 20 and integrated EFS into XEmacs.  He's
849 also responsible for the ports of facemenu.el and enriched.el.  When
850 Mike isn't busy putting together patches for free software he has just
851 installed or changing his hairstyle, he does research in modern
852 programming languages and their implementation, and hopes that one day
853 XEmacs will speak Scheme.\n"))
854     (vin
855      (widget-insert "\
856 Vin maintains the XEmacs patch pages in order to bring a more
857 stable XEmacs.  (Actually, he does it 'cause it's fun and he's been
858 using emacs for a long, long time.)  Vin also contributed the detached
859 minibuffer code as well as a few minor enhancements to the menubar
860 options.
861
862 I own and operate my own consulting firm, EtherSoft.  Shhh, don't
863 tell anyone, but it's named after an Ultimate team I used to play
864 with in Austin, Texas - the Ether Bunnies.  I'm getting too old
865 to play competitive Ultimate any more, so now I've gotten roped
866 into serving on the board of directors of the Ultimate Players
867 Association.  See ")
868      (about-url-link 'vin "Visit the UPA homepage")
869      (widget-insert ".\n"))
870     (ajc
871      (widget-insert "\
872 When not helping maintain the XEmacs website, Andrew is a Network
873 Software Engineer(tm) for Monash University in Australia, maintaining
874 webservers and doing random other things.  As well as spending spare
875 time being an Eager Young Space Cadet and fiddling with XEmacs/Gnus
876 et. al., he spends his time pursuing, among other things, a Life.
877 Some of this currently involves doing an A-Z (by country) of
878 restaurants with friends, and has, in the past, involved dyeing his
879 hair various colours (see ")
880      (about-url-link 'ajc "Visit Andrew's home page")
881      (widget-insert ".\n"))
882     (rickc
883      (widget-insert "\
884 The hacker formerly known as Rick Busdiecker develops and maintains
885 libraries for financial applications at Lehman Brothers during
886 daylight hours.  In the evenings he maintains three children, and
887 when he ought to be sleeping he co-maintains ILISP, builds XEmacs
888 betas, and tinkers with various personal hacking projects..\n"))
889     (kazz
890      (widget-insert "\
891 Kazz is the XEmacs lead on BSD (especially FreeBSD).
892 His main workspace is, probably, the latest stable version of
893 FreeBSD and it makes him comfortable and not.
894 His *mission* is to make XEmacs runs on FreeBSD without
895 any problem.
896
897 In real life, he is working on a PDM product based on CORBA,
898 and doing consultation, design and implemention.
899 He loves to play soccer, yes football!
900 See also:")
901      (about-url-link 'kazz "Visit Kazz's home page")
902      (widget-insert ".\n"))
903     (dkindred
904      (widget-insert "\
905 Darrell tends to come out of the woodwork a couple of weeks
906 before a new release with a flurry of fixes for bugs that
907 annoy him.  He hopes he's spared you from a core dump or two.
908
909 Darrell is currently a doctoral student in computer science at
910 Carnegie Mellon University, but he's trying hard to kick that
911 habit.
912
913 See ")
914      (about-url-link 'dkindred "Visit Darrell's WWW page")
915      (widget-insert ".\n"))
916     (pez
917      (widget-insert "\
918 Author of SQL Mode, edit-toolbar, mailtool-mode, and various other
919 small packages with varying degrees of usefulness.  Peter has
920 recently left Wall Street to start Daedalus World Wide Corporation,
921 a software development firm.  See ")
922      (about-url-link 'pez "Daedalus on the web")
923      (widget-insert ".\n"))
924     (dv
925      (widget-insert "\
926 I graduated at ENST (an engineering school in Paris) and have a Ph.D.
927 in computer science. I'm currently a teacher at EPITA (another
928 engineering school, still in Paris) and a researcher at LRDE (EPITA's
929 research and development laboratory). Our research topics include
930 generic programming and distributed virtual reality.
931
932 Apart from XEmacs, I'm also involved in other free software projects,
933 including Gnus, BBDB, and the GNU \"autotools\". I also wrote some
934 LaTeX packages (ugh :-).
935
936 All of this, actually, is only 60% true. Two days per week, I'm also a
937 semi-professional Jazz guitar player (and singer), which means that it
938 is not the way I earn my crust, but things may very well reverse in
939 the future ...\n\n")
940      (widget-insert "Visit Didier's home page: ")
941      (about-url-link 'dv "Visit Didier's home page")
942      (widget-insert "\n"))
943     (rossini
944      (widget-insert "\
945 Author of the first XEmacs FAQ, as well as minor priest in the
946 movement to get every statistician in the world to use XEmacs for
947 statistical programming and data analysis.  Current development lead
948 for ESS (Emacs Speaks Statistics), a mode and inferior mode for
949 statistical programming and data analysis for SAS, S, S-PLUS, R,
950 XLispStat; configurable for nearly any other statistical
951 language/package one might want.  In spare time, acts as a
952 Ph.D. (bio)statistician for money and amusement.  Current position:
953 Assistant Professor of Statistics at the University of South Carolina.\n"))
954     (ograf
955      (widget-insert "\
956 I'm a student of computer sciences at the University of Koblenz. My
957 major is computational linguistics (human language generation and
958 analysis).
959
960 I make my living as a managing director of a small but fine company
961 which I started two years ago with one of my friends. We provide
962 business network solutions based on linux servers and various other
963 networking products.
964
965 Most of my spare time I spent on the development of the XEmacs
966 Drag'n'Drop API, a enhanced version of Tk called TkStep (better looks,
967 also Drag'n'Drop, and more), and various other hacks: ISDN-tools,
968 cd players, python, etc...
969
970 To see some of these have a look at ")
971      (about-url-link 'ograf "one of my homepages")
972      (widget-insert ".\n"))
973     (juhp
974      (widget-insert "\
975 I started using XEmacs-20 as my work-environment in June 1997.  I
976 became a beta developer shortly after that (\"it seems like a good
977 idea at the time...\" :-), so far contributing mainly bug fixes,
978 \"find-func.el\" and improvements to \"help.el\".
979
980 My current dreams for XEmacs: move to using guile as the Lisp engine
981 and gtk as the default X toolkit.
982
983 I have been a postdoctoral researcher at the Research Institute for
984 Mathematical Sciences, Kyoto University, since August 1994, doing
985 research in mathematical physics (representation theory of quantum
986 groups).  Though now I seem to be heading for other things.
987
988 My homepage is ")
989      (about-url-link 'juhp "Visit Jens' homepage")
990      (widget-insert ".\n"))
991     (jason
992      (widget-insert "\
993 Beta tester, manager of the various XEmacs mailing lists and binary
994 kit manager.  Also, originator and maintainer of the gnus.org domain.
995
996 Jason resides in Northern New Mexico where he works as a Systems
997 Scientist(tm) in the Los Alamos National Laboratory's Advanced
998 Computing Group.
999
1000 See: ")
1001       (about-url-link 'jason "Visit Jason's homepage")
1002       (widget-insert ".\n"))
1003     (jmiller
1004      (widget-insert "\
1005 Jeff grew up in Indiana and is a country boy at heart.  He currently lives
1006 in, of all places, Millersville Maryland.  He spends a lot of his free
1007 time tinkering with Linux and hacking on XEmacs and loves it when he finds
1008 new cool features in either.  When he's not doing that, he enjoys downhill
1009 skiing, puzzles, and sci-fi.  Jeff is also really interested in classical
1010 Roman history and enjoys making trips to Italy, where he was born, and
1011 seeing the sights")
1012      (widget-insert ".\n"))
1013     (chr
1014      (widget-insert "\
1015 Maintainer of the XEmacs FAQ and proud author of `zap-up-to-char'.
1016
1017 Christian is a student at the Norwegian School of Economics and
1018 Business Administration in Bergen, Norway.  He used to work for an
1019 internet startup called New Media Science, doing scripting and
1020 violation of HTML DTD's.  After graduation, spring 1999, he'll be
1021 looking for a job involving lisp programming, French and Russian.")
1022      (widget-insert ".\n"))
1023     (aj
1024      (widget-insert "\
1025 I'm a software developer working for the SuSE Labs of the Linux
1026 distributor SuSE.  My main task is to improve the GNU C library.")
1027      (widget-insert ".\n"))
1028 ))
1029
1030 ;; Setup the buffer for a maintainer.
1031 (defun about-maintainer (widget &optional event)
1032   (let* ((entry (assq (widget-value widget) xemacs-hackers))
1033          (who (car entry))
1034          (name (cadr entry))
1035          (address (caddr entry))
1036          (bufname (format "*About %s*" name)))
1037     (unless (about-get-buffer bufname)
1038       ;; Display the glyph and name
1039       (widget-insert "\n")
1040       (widget-create 'default :format "%t"
1041                      :tag-glyph (about-maintainer-glyph who))
1042       (widget-insert
1043        "  " (about-with-face (format "%s" name) 'bold)
1044        " <" address ">\n\n")
1045       ;; Display the actual info
1046       (about-maintainer-info entry)
1047       (widget-insert "\n")
1048       (about-finish-buffer 'kill)
1049       (forward-line 2))))
1050
1051 (defsubst about-tabs (str)
1052   (let ((x (length str)))
1053     (cond ((>= x 24) " ")
1054           ((>= x 16) "\t")
1055           ((>= x 8) "\t\t")
1056           (t "\t\t\t"))))
1057
1058 (defun about-show-linked-info (who shortinfo)
1059   (let* ((entry (assq who xemacs-hackers))
1060          (name (cadr entry))
1061          (address (caddr entry)))
1062     (widget-create 'link :help-echo (concat "Find out more about " name)
1063                    :action 'about-maintainer
1064                    :button-prefix ""
1065                    :button-suffix ""
1066                    :tag name
1067                    :value who)
1068     (widget-insert (about-tabs name)
1069                    (format "<%s>\n%s\n" address shortinfo))))
1070
1071 (defun about-hackers (&rest ignore)
1072   (unless (about-get-buffer "*About Contributors*")
1073     (let ((title "Other Contributors to XEmacs"))
1074       (widget-insert
1075        (about-center title)
1076        (about-with-face title 'bold)))
1077     (widget-insert
1078      "\n
1079 Like most free software, XEmacs is a collaborative effort.  These are
1080 some of the contributors.  We have no doubt forgotten someone; we
1081 apologize!  You can see some of our faces under the links.\n\n")
1082     (about-show-linked-info 'vladimir "\
1083 Former technical lead for XEmacs at Sun.  He is now with a startup
1084 marketing embedded Java databases.\n")
1085     (about-show-linked-info 'stig "\
1086 Peripatetic uninominal Emacs hacker.  Stig sometimes operates out of a
1087 big white van set up for nomadic living and hacking.  Implemented the
1088 faster stay-up Lucid menus and hyper-apropos.  Contributor of many
1089 dispersed improvements in the core Lisp code, and back-seat
1090 contributor for several of its major packages.\n")
1091     (about-show-linked-info 'baw "\
1092 Author of CC Mode for C, C++, Objective-C and Java editing, and
1093 Supercite for mail and news citing.  Also various and sundry other
1094 Emacs utilities, fixes, enhancements and kludgery as whimsy, boredom,
1095 and ToT dictate (but not necessarily in that order).\n")
1096     (about-show-linked-info 'piper "\
1097 Created the prototype for the toolbars.  Has been the first to make
1098 use of many of the new XEmacs graphics features. Has implemented many
1099 of XEmacs' graphics features under MS-Windows and has ported XEmacs
1100 to cygwin under MS-Windows.\n")
1101     (about-show-linked-info 'bw "\
1102 Author of the Hyperbole everyday information management hypertext
1103 system and the OO-Browser multi-language code browser.  He also
1104 designed the BeOpen InfoDock integrated development environment
1105 for software engineers.  It runs atop XEmacs and is available from
1106 his firm, BeOpen, which offers custom development and support packages
1107 for corporate users of XEmacs, GNU Emacs and InfoDock.  His interests
1108 include user interfaces, information management, CASE tools,
1109 communications and enterprise integration.\n")
1110     (about-show-linked-info 'wmperry "\
1111 Author of Emacs-w3, the builtin web browser that comes with XEmacs,
1112 and various additions to the C code (e.g. the database support, the
1113 PNG support, some of the GIF/JPEG support, the strikethru face
1114 attribute support).\n")
1115     (about-show-linked-info 'kyle "\
1116 Author of VM, a mail-reading package that is included in the standard
1117 XEmacs distribution, and contributor of many improvements and bug
1118 fixes.  Unlike RMAIL and MH-E, VM uses the standard UNIX mailbox
1119 format for its folders; thus, you can use VM concurrently with other
1120 UNIX mail readers such as Berkeley Mail and ELM.\n")
1121     (about-show-linked-info 'larsi "\
1122 Author of Gnus the Usenet news and Mail reading package in the
1123 standard XEmacs distribution, and contributor of various enhancements
1124 and portability fixes.  Lars is a student at the Institute of
1125 Informatics at the University of Oslo.  He is currently plumbing away
1126 at his majors work at the Institute of Physics, working on an SCI
1127 project connected with CASCADE and CERN and stuff.\n")
1128         (about-show-linked-info 'jan "\
1129 Apart from hunting down redisplay bugs Jan has worked on such
1130 things as improvements to the package system, implementing lazy-shot,
1131 a short stint at tracking patches and currently acts as a guardian
1132 of the XEmacs custom subsystem and gnuserv. Having finished his PhD
1133 he is now working on Java virtual machines.\n")
1134     (about-show-linked-info 'jens "\
1135 I'm currently working at the University of Karlsruhe, Germany on
1136 getting my diploma thesis on Supersymmetry (uuh, that's physics) done.
1137 After that (and all the remaining exams) I'm looking forward to make a
1138 living out of my hobbies -- computers (and graphics). But because I
1139 have no deadline for the exams and XEmacs betas are released at a high
1140 rate this may take some time...\n")     
1141     (about-show-linked-info 'jareth "\
1142 Jareth Hein is a mountain boy who abandoned his home state of Colorado
1143 for the perpetual state of chaos known as Tokyo in a failed attempt to
1144 become a cel-animator, and a more successful one to become a
1145 computer-game programmer. As he happens to be bilingual (guess which
1146 two?) he's been doing quite a bit of MULE hacking. He's also getting
1147 his hands dirty in the graphics areas as well.\n")
1148     (about-show-linked-info 'morioka "\
1149 I am the author of tm-view (general MIME Viewer for GNU Emacs) and
1150 major author and maintainer of tm (Tools for MIME; general MIME
1151 package for GNU Emacs).  In addition, I am working to unify MULE API
1152 for Emacs and XEmacs.  In XEmacs, I have ported many mule features.
1153
1154 I am a doctoral student at School of Information Science of JAIST
1155 \(Japan Advanced Institute of Science and Technology, Hokuriku).  I'm
1156 interested in Natural Language, Affordance and writing systems.\n")
1157     (about-show-linked-info 'dmoore "\
1158 David has contributed greatly to the quest to speed up XEmacs.  He is
1159 a student in the Computer Systems Laboratory at UCSD.  When he manages
1160 to have free time, he usually spends it on 200 mile bicycle rides,
1161 learning german or showing people the best mail & news environment
1162 he's found in 10 years.  (That'd be XEmacs, Gnus and bbdb, of course.)
1163 He can be found at `druidmuck.egbt.org 4201' at various hours of the
1164 day.\n")
1165     (about-show-linked-info 'sperber "\
1166 Mike ported EFS to XEmacs 20 and integrated EFS into XEmacs.  He's
1167 also responsible for the ports of facemenu.el and enriched.el.  When
1168 Mike isn't busy putting together patches for free software he has just
1169 installed or changing his hairstyle, he does research in modern
1170 programming languages and their implementation, and hopes that one day
1171 XEmacs will speak Scheme.\n")
1172     (about-show-linked-info 'vin "\
1173 Vin helps maintain the older, more mature (read: moldy) versions of
1174 XEmacs.  Vin has maintained the official XEmacs patch pages.\n")
1175     (about-show-linked-info 'thiessel "\
1176 Worked at University of Kaiserslautern where he took part in the
1177 development and design of a CAD framework for analog integrated
1178 circuits with special emphasis on distributed software concepts. He
1179 has now joined HP as technical consultant.
1180
1181 For XEmacs he does beta testing and tries to take care of XEmacs
1182 website at <http://www.xemacs.org>.\n")
1183     (about-show-linked-info 'ajc "\
1184 When not helping maintain the XEmacs website, Andrew is a Network
1185 Software Engineer(tm) for Monash University in Australia, maintaining
1186 webservers and doing random other things.  As well as spending spare
1187 time being an Eager Young Space Cadet and fiddling with XEmacs/Gnus
1188 et. al., he spends his time pursuing, among other things, a Life.
1189 Some of this currently involves doing an A-Z (by country) of
1190 restaurants with friends, and has, in the past, involved dyeing his
1191 hair various colours.\n")
1192     (about-show-linked-info 'kazz "\
1193 IENAGA Kazuyuki is the XEmacs technical lead on BSD, particularly
1194 FreeBSD.\n")
1195     (about-show-linked-info 'dkindred "\
1196 Darrell tends to come out of the woodwork a couple of weeks
1197 before a new release with a flurry of fixes for bugs that
1198 annoy him.  He hopes he's spared you from a core dump or two.
1199
1200 Darrell is currently a doctoral student in computer science at
1201 Carnegie Mellon University, but he's trying hard to kick that
1202 habit.\n")
1203     (about-show-linked-info 'dv "\
1204 I joined the development of XEmacs in 1996, and have been one of the
1205 core maintainers since 1998. Although I'm mostly interested in the
1206 GUI, ergonomics, redisplay and autoconf issues, it's probably simpler
1207 to describe what I'm *not* involved in: I've never touched the Lisp
1208 implementation, and I probably never will...
1209
1210 I'm the author of the multicast support, I wrote and maintain some
1211 external Emacs Lisp packages (including mchat) and I'm also
1212 responsible for some of the core Lisp code (including the rectangle
1213 library which I rewrote for both XEmacs and GNU Emacs).\n")
1214     (about-show-linked-info 'marcpa "\
1215 I work for Positron Industries Inc., Public Safety Division.\n")
1216     (about-show-linked-info 'pez "\
1217 Author of SQL Mode, edit-toolbar, mailtool-mode, and various other
1218 small packages with varying degrees of usefulness.\n")
1219     (about-show-linked-info 'rickc "\
1220 The hacker formerly known as Rick Busdiecker, maintainer of ILISP.\n")
1221     (about-show-linked-info 'rossini "\
1222 Author of the first XEmacs FAQ, as well as minor priest in the
1223 movement to get every statistician in the world to use XEmacs for
1224 statistical programming and data analysis.  Current development lead
1225 for ESS (Emacs Speaks Statistics), a mode and inferior mode for
1226 statistical programming and data analysis for SAS, S, S-PLUS, R,
1227 XLispStat; configurable for nearly any other statistical
1228 language/package one might want.  In spare time, acts as a
1229 Ph.D. (bio)statistician for money and amusement.  Current position:
1230 Assistant Professor of Statistics at the University of South Carolina.\n")
1231     (about-show-linked-info 'stigb "\
1232 Currently studying computer science in Trondheim, Norway.  Full time
1233 Linux user and proud of it.  XEmacs hacker light.  Maintainer of the
1234 RPM package.\n")
1235     (about-show-linked-info 'ograf "\
1236 Author of the XEmacs Drag'n'Drop API.\n")
1237     (about-show-linked-info 'juhp "\
1238 Author of \"find-func.el\".\n")
1239     (about-show-linked-info 'jason "\
1240 Beta tester, manager of the various XEmacs mailing lists and binary
1241 kit manager.  Also, originator and maintainer of the gnus.org domain.\n")
1242     (about-show-linked-info 'jmiller "\
1243 Beta tester and last hacker of calendar.\n")
1244     (about-show-linked-info 'chr "\
1245 Maintainer of the XEmacs FAQ and proud author of `zap-up-to-char'.\n")
1246     (about-show-linked-info 'aj "\
1247 Former `Package Patch Tender', beta tester and GNU libc developer.\n")
1248
1249     (flet ((print-short (name addr &optional shortinfo)
1250              (concat (about-with-face name 'italic)
1251                      (about-tabs name)
1252                      "<" addr ">\n"
1253                      (if shortinfo (concat shortinfo "\n") ""))))
1254       (widget-insert
1255        (print-short "Eduardo Pelegri-Llopart" "pelegri@eng.sun.com" "\
1256 Author of EOS, a package included in the standard XEmacs distribution
1257 that integrates XEmacs with the SPARCworks development environment
1258 from Sun.  Past lead for XEmacs at Sun; advocated the validity of
1259 using Epoch, and later Lemacs, at Sun through several early
1260 prototypes.\n")
1261        (print-short "Matthieu Devin" "devin@rs.com" "\
1262 Part of the original (pre-19.0) Lucid Emacs development team.
1263 Matthieu wrote the initial Energize interface, designed the
1264 toolkit-independent Lucid Widget library, and fixed enough redisplay
1265 bugs to last a lifetime.  The features in Lucid Emacs were largely
1266 inspired by Matthieu's initial prototype of an Energize interface
1267 using Epoch.\n")
1268        (print-short "Harlan Sexton" "hbs@odi.com" "\
1269 Part of the original (pre-19.0) Lucid Emacs development team.  Harlan
1270 designed and implemented many of the low level data structures which
1271 are original to the Lucid version of Emacs, including extents and hash
1272 tables.\n")
1273        (print-short "Eric Benson" "eb@kaleida.com" "\
1274 Also part of the original Lucid Emacs development team.  Eric played a
1275 big part in the design of many aspects of the system, including the
1276 new command loop and keymaps, fixed numerous bugs, and has been a
1277 reliable beta tester ever since.\n")
1278        (print-short "John Rose" "john.rose@sun.com" "\
1279 Author of many extensions to the `extents' code, including the initial
1280 implementation of `duplicable' properties.\n")
1281        (print-short "Hans Muller" "hmuller@eng.sun.com" "\
1282 Author of the code used to connect XEmacs with ToolTalk, and of an
1283 early client of the external Emacs widget.\n")
1284        (print-short "David hobley" "david.hobley@usa.net" "\
1285 I used to do real work, but now I am a Project Manager for one of the
1286 Telco's in Australia. In my spare time I like to get back to basics and
1287 muck around with things. As a result I started the NT port. Hopefully I
1288 will get to finish it sometime sooner rather than later. I do vaguely
1289 remember University where it seems like I had more spare time that I can
1290 believe now. Oh well, such is life.\n")
1291        (print-short "Jonathan Harris" "jhar@tardis.ed.ac.uk" "\
1292 Manages the team responsible for the EPOC kernel at Symbian Ltd. Started
1293 the mswindows native-GUI port of XEmacs because he felt lost using
1294 Microsoft Windows without a real editor.\n")
1295        (print-short "Michael R. Cook" "mcook@cognex.com" "\
1296 Author of the \"shy groups\" and minimal matching regular expression
1297 extensions.\n")
1298        (print-short "Darryl Okahata" "darrylo@sr.hp.com" "\
1299 Perennial Emacs hacker since 1986 or so, when he first started on GNU
1300 Emacs 17.something.  Over the years, he's developed \"OEmacs\", the first
1301 version of GNU Emacs 19 for MSDOS, and \"bigperl\", a 32-bit version of
1302 Perl4 for MSDOS.  In recent years, reality has intruded and he no longer
1303 has much time for playing with cool programs.  What little time he has
1304 now goes to XEmacs hacking, where he's worked on speeding up dired under
1305 MS Windows, and to feeding his two cats.\n")
1306        "\n\
1307 In addition to those just mentioned, the following people have spent a
1308 great deal of effort providing feedback, testing beta versions of
1309 XEmacs, providing patches to the source code, or doing all of the
1310 above.  We couldn't have done it without them.\n\n"
1311        (print-short "Nagi M. Aboulenein" "aboulene@ponder.csci.unt.edu")
1312        (print-short "Per Abrahamsen" "abraham@dina.kvl.dk")
1313        (print-short "Gary Adams" "gra@zeppo.East.Sun.COM")
1314        (print-short "Gennady Agranov" "agranov@csa.CS.Technion.Ac.IL")
1315        (print-short "Adrian Aichner" "adrian@xemacs.org")
1316        (print-short "Mark Allender" "allender@vnet.IBM.COM")
1317        (print-short "Stephen R. Anderson" "sra@bloch.ling.yale.edu")
1318        (print-short "Butch Anton" "butch@zaphod.uchicago.edu")
1319        (print-short "Fred Appelman" "Fred.Appelman@cv.ruu.nl")
1320        (print-short "Erik \"The Pope\" Arneson" "lazarus@mind.net")
1321        (print-short "Tor Arntsen" "tor@spacetec.no")
1322        (print-short "Marc Aurel" "4-tea-2@bong.saar.de")
1323        (print-short "Larry Auton" "lda@control.att.com")
1324        (print-short "Larry Ayers" "layers@marktwain.net")
1325        (print-short "Oswald P. Backus IV" "backus@altagroup.com")
1326        (print-short "Mike Battaglia" "mbattagl@dsccc.com")
1327        (print-short "Neal Becker" "neal@ctd.comsat.com")
1328        (print-short "Paul Bibilo" "peb@delcam.com")
1329        (print-short "Leonard Blanks" "ltb@haruspex.demon.co.uk")
1330        (print-short "Jan Borchers" "job@tk.uni-linz.ac.at")
1331        (print-short "Mark Borges" "mdb@cdc.noaa.gov")
1332        (print-short "David P. Boswell" "daveb@tau.space.thiokol.com")
1333        (print-short "Tim Bradshaw" "tfb@edinburgh.ac.uk")
1334        (print-short "Rick Braumoeller" "rickb@mti.sgi.com")
1335        (print-short "Matthew J. Brown" "mjb@doc.ic.ac.uk")
1336        (print-short "Alastair Burt" "burt@dfki.uni-kl.de")
1337        (print-short "David Bush" "david.bush@adn.alcatel.com")
1338        (print-short "Richard Caley" "rjc@cstr.edinburgh.ac.uk")
1339        (print-short "Stephen Carney" "carney@gvc.dec.com")
1340        (print-short "Lorenzo M. Catucci" "lorenzo@argon.roma2.infn.it")
1341        (print-short "Philippe Charton" "charton@lmd.ens.fr")
1342        (print-short "Peter Cheng" "peter.cheng@sun.com")
1343        (print-short "Jin S. Choi" "jin@atype.com")
1344        (print-short "Tomasz J. Cholewo" "tjchol01@mecca.spd.louisville.edu")
1345        (print-short "Serenella Ciongoli" "czs00@ladybug.oes.amdahl.com")
1346        (print-short "Glynn Clements" "glynn@sensei.co.uk")
1347        (print-short "Richard Cognot" "cognot@ensg.u-nancy.fr")
1348        (print-short "Andy Cohen" "cohen@andy.bu.edu")
1349        (print-short "Richard Coleman" "coleman@math.gatech.edu")
1350        (print-short "Mauro Condarelli" "MC5686@mclink.it")
1351        (print-short "Andrew J Cosgriff" "ajc@bing.wattle.id.au")
1352        (print-short "Nick J. Crabtree" "nickc@scopic.com")
1353        (print-short "Christopher Davis" "ckd@kei.com")
1354        (print-short "Soren Dayton" "csdayton@cs.uchicago.edu")
1355        (print-short "Chris Dean" "ctdean@cogit.com")
1356        (print-short "Michael Diers" "mdiers@logware.de")
1357        (print-short "William G. Dubuque" "wgd@martigny.ai.mit.edu")
1358        (print-short "Steve Dunham" "dunham@dunham.tcimet.net")
1359        (print-short "Samuel J. Eaton" "samuele@cogs.susx.ac.uk")
1360        (print-short "Carl Edman" "cedman@Princeton.EDU")
1361        (print-short "Dave Edmondson" "davided@sco.com")
1362        (print-short "Jonathan Edwards" "edwards@intranet.com")
1363        (print-short "Eric Eide" "eeide@asylum.cs.utah.edu")
1364        (print-short "EKR" "ekr@terisa.com")
1365        (print-short "Gunnar Evermann" "ge204@eng.cam.ac.uk")
1366        (print-short "Oscar Figueiredo" "Oscar.Figueiredo@di.epfl.ch")
1367        (print-short "David Fletcher" "frodo@tsunami.com")
1368        (print-short "Paul Flinders" "ptf@delcam.co.uk")
1369        (print-short "Jered J Floyd" "jered@mit.edu")
1370        (print-short "Gary D. Foster" "Gary.Foster@Corp.Sun.COM")
1371        (print-short "Jerry Frain" "jerry@sneffels.tivoli.com")
1372        (print-short "Holger Franz" "hfranz@physik.rwth-aachen.de")
1373        (print-short "Benjamin Fried" "bf@morgan.com")
1374        (print-short "Barry Friedman" "friedman@nortel.ca")
1375        (print-short "Noah Friedman" "friedman@splode.com")
1376        (print-short "Kazuyoshi Furutaka" "furutaka@Flux.tokai.jaeri.go.jp")
1377        (print-short "Lew Gaiter III" "lew@StarFire.com")
1378        (print-short "Olivier Galibert" "Olivier.Galibert@mines.u-nancy.fr")
1379        (print-short "Itay Gat" "itay@cs.huji.ac.il")
1380        (print-short "Tim Geisler" "Tim.Geisler@informatik.uni-muenchen.de")
1381        (print-short "Dave Gillespie" "daveg@synaptics.com")
1382        (print-short "Christian F. Goetze" "cg@bigbook.com")
1383        (print-short "Yusuf Goolamabbas" "yusufg@iss.nus.sg")
1384        (print-short "Wolfgang Grieskamp" "wg@cs.tu-berlin.de")
1385        (print-short "John Griffith" "griffith@sfs.nphil.uni-tuebingen.de")
1386        (print-short "James Grinter" "jrg@demon.net")
1387        (print-short "Ben Gross" "bgross@uiuc.edu")
1388        (print-short "Dirk Grunwald" "grunwald@foobar.cs.Colorado.EDU")
1389        (print-short "Michael Guenther" "michaelg@igor.stuttgart.netsurf.de")
1390        (print-short "Dipankar Gupta" "dg@hplb.hpl.hp.com")
1391        (print-short "Markus Gutschke" "gutschk@GOEDEL.UNI-MUENSTER.DE")
1392        (print-short "Kai Haberzettl" "khaberz@synnet.de")
1393        (print-short "Adam Hammer" "hammer@cs.purdue.edu")
1394        (print-short "Magnus Hammerin" "magnush@epact.se")
1395        (print-short "ChangGil Han" "cghan@phys401.phys.pusan.ac.kr")
1396        (print-short "Derek Harding" "dharding@lssec.bt.co.uk")
1397        (print-short "Michael Harnois" "mharnois@sbt.net")
1398        (print-short "Yoshiki Hayashi" "yoshiki@xemacs.org")
1399        (print-short "John Haxby" "J.Haxby@isode.com")
1400        (print-short "Karl M. Hegbloom" "karlheg@inetarena.com")
1401        (print-short "Benedikt Heinen" "beh@icemark.thenet.ch")
1402        (print-short "Stephan Herrmann" "sh@first.gmd.de")
1403        (print-short "August Hill" "awhill@inlink.com")
1404        (print-short "Mike Hill" "mikehill@hgeng.com")
1405        (print-short "Charles Hines" "chuck_hines@VNET.IBM.COM")
1406        (print-short "Shane Holder" "holder@rsn.hp.com")
1407        (print-short "Chris Holt" "xris@migraine.stanford.edu")
1408        (print-short "Tetsuya HOYANO" "hoyano@ari.bekkoame.or.jp")
1409        (print-short "David Hughes" "djh@harston.cv.com")
1410        (print-short "Tudor Hulubei" "tudor@cs.unh.edu")
1411        (print-short "Tatsuya Ichikawa" "ichikawa@hv.epson.co.jp")
1412        (print-short "Andrew Innes" "andrewi@harlequin.co.uk")
1413        (print-short "Markku Jarvinen" "Markku.Jarvinen@simpukka.funet.fi")
1414        (print-short "Robin Jeffries" "robin.jeffries@sun.com")
1415        (print-short "Philip Johnson" "johnson@uhics.ics.Hawaii.Edu")
1416        (print-short "J. Kean Johnston" "jkj@paradigm-sa.com")
1417        (print-short "John W. Jones" "jj@asu.edu")
1418        (print-short "Andreas Kaempf" "andreas@sccon.com")
1419        (print-short "Yoshiaki Kasahara" "kasahara@nc.kyushu-u.ac.jp")
1420        (print-short "Kirill M. Katsnelson" "kkm@kis.ru")
1421        (print-short "Amir Katz" "amir@ndsoft.com")
1422        (print-short "Doug Keller" "dkeller@vnet.ibm.com")
1423        (print-short "Hunter Kelly" "retnuh@corona")
1424        (print-short "Gregor Kennedy" "gregork@dadd.ti.com")
1425        (print-short "Michael Kifer" "kifer@cs.sunysb.edu")
1426        (print-short "Yasuhiko Kiuchi" "kiuchi@dsp.ksp.fujixerox.co.jp")
1427        (print-short "Greg Klanderman" "greg.klanderman@alum.mit.edu")
1428        (print-short "Valdis Kletnieks" "Valdis.Kletnieks@vt.edu")
1429        (print-short "Norbert Koch" "n.koch@delta-ii.de")
1430        (print-short "Rob Kooper" "kooper@cc.gatech.edu")
1431        (print-short "Peter Skov Knudsen" "knu@dde.dk")
1432        (print-short "Jens Krinke" "krinke@ips.cs.tu-bs.de")
1433        (print-short "Maximilien Lincourt" "max@toonboom.com")
1434        (print-short "Mats Larsson" "Mats.Larsson@uab.ericsson.se")
1435        (print-short "Simon Leinen" "simon@instrumatic.ch")
1436        (print-short "Carsten Leonhardt" "leo@arioch.oche.de")
1437        (print-short "James LewisMoss" "moss@cs.sc.edu")
1438        (print-short "Mats Lidell" "mats.lidell@contactor.se")
1439        (print-short "Matt Liggett" "mliggett@seven.ucs.indiana.edu")
1440        (print-short "Christian Limpach" "Christian.Limpach@nice.ch")
1441        (print-short "Maximilien Lincourt" "max@toonboom.com")
1442        (print-short "Markus Linnala" "maage@b14b.tupsu.ton.tut.fi")
1443        (print-short "Robert Lipe" "robertl@arnet.com")
1444        (print-short "Derrell Lipman" "derrell@vis-av.com")
1445        (print-short "Damon Lipparelli" "lipp@aa.net")
1446        (print-short "Hamish Macdonald" "hamish@bnr.ca")
1447        (print-short "Ian MacKinnon" "imackinnon@telia.co.uk")
1448        (print-short "Patrick MacRoberts" "macro@hpcobr30.cup.hp.com")
1449        (print-short "Tonny Madsen" "Tonny.Madsen@netman.dk")
1450        (print-short "Ketil Z Malde" "ketil@ii.uib.no")
1451        (print-short "Steve March" "smarch@quaver.urbana.mcd.mot.com")
1452        (print-short "Ricardo Marek" "ricky@ornet.co.il")
1453        (print-short "Pekka Marjola" "pema@iki.fi")
1454        (print-short "Simon Marshall" "simon@gnu.ai.mit.edu")
1455        (print-short "Dave Mason" "dmason@plg.uwaterloo.ca")
1456        (print-short "Jaye Mathisen" "mrcpu@cdsnet.net")
1457        (print-short "Jason McLaren" "mclaren@math.mcgill.ca")
1458        (print-short "Michael McNamara" "mac@silicon-sorcery.com")
1459        (print-short "Michael Meissner" "meissner@osf.org")
1460        (print-short "David M. Meyer" "meyer@ns.uoregon.edu")
1461        (print-short "John Mignault" "jbm@panix.com")
1462        (print-short "Brad Miller" "bmiller@cs.umn.edu")
1463        (print-short "John Morey" "jmorey@crl.com")
1464        (print-short "Rob Mori" "rob.mori@sun.com")
1465        (print-short "Heiko Muenkel" "muenkel@tnt.uni-hannover.de")
1466        (print-short "Arup Mukherjee" "arup+@cs.cmu.edu")
1467        (print-short "Colas Nahaboo" "Colas.Nahaboo@sophia.inria.fr")
1468        (print-short "Lynn D. Newton" "lynn@ives.phx.mcd.mot.com")
1469        (print-short "Casey Nielson" "knielson@joule.elee.calpoly.edu")
1470        (print-short "Georg Nikodym" "Georg.Nikodym@canada.sun.com")
1471        (print-short "Andy Norman" "ange@hplb.hpl.hp.com")
1472        (print-short "Joe Nuspl" "nuspl@sequent.com")
1473        (print-short "Kim Nyberg" "kny@tekla.fi")
1474        (print-short "Kevin Oberman" "oberman@es.net")
1475        (print-short "David Ofelt" "ofelt@getalife.Stanford.EDU")
1476        (print-short "Alexandre Oliva" "oliva@dcc.unicamp.br")
1477        (print-short "Tore Olsen" "toreo@colargol.idb.hist.no")
1478        (print-short "Greg Onufer" "Greg.Onufer@eng.sun.com")
1479        (print-short "Achim Oppelt" "aoppelt@theorie3.physik.uni-erlangen.de")
1480        (print-short "Rebecca Ore" "rebecca.ore@op.net")
1481        (print-short "Sudeep Kumar Palat" "palat@idt.unit.no")
1482        (print-short "Joel Peterson" "tarzan@aosi.com")
1483        (print-short "Thomas A. Peterson" "tap@src.honeywell.com")
1484        (print-short "Tibor Polgar" "tibor@alteon.com")
1485        (print-short "Fabrice POPINEAU" "popineau@esemetz.ese-metz.fr")
1486        (print-short "Frederic Poncin" "fp@info.ucl.ac.be")
1487        (print-short "E. Rehmi Post" "rehmi@asylum.sf.ca.us")
1488        (print-short "Martin Pottendorfer" "Martin.Pottendorfer@aut.alcatel.at")
1489        (print-short "Colin Rafferty" "colin@xemacs.org")
1490        (print-short "Rick Rankin" "Rick_Rankin-P15254@email.mot.com")
1491        (print-short "Paul M Reilly" "pmr@pajato.com")
1492        (print-short "Jack Repenning" "jackr@sgi.com")
1493        (print-short "Daniel Rich" "drich@cisco.com")
1494        (print-short "Roland Rieke" "rol@darmstadt.gmd.de")
1495        (print-short "Art Rijos" "art.rijos@SNET.com")
1496        (print-short "Russell Ritchie" "ritchier@britannia-life.co.uk")
1497        (print-short "Roland" "rol@darmstadt.gmd.de")
1498        (print-short "Mike Russell" "mjruss@rchland.vnet.ibm.com")
1499        (print-short "Hajime Saitou" "hajime@jsk.t.u-tokyo.ac.jp")
1500        (print-short "Jan Sandquist" "etxquist@iqa.ericsson.se")
1501        (print-short "Marty Sasaki" "sasaki@spdcc.com")
1502        (print-short "SATO Daisuke" "densuke@ga2.so-net.or.jp")
1503        (print-short "Kenji Sato" "ken@ny.kdd.com")
1504        (print-short "Mike Scheidler" "c23mts@eng.delcoelect.com")
1505        (print-short "Daniel Schepler" "daniel@shep13.wustl.edu")
1506        (print-short "Holger Schauer" "schauer@coling.uni-freiburg.de")
1507        (print-short "Darrel Schneider" "darrel@slc.com")
1508        (print-short "Hayden Schultz" "haydens@ll.mit.edu")
1509        (print-short "Cotton Seed" "cottons@cybercom.net")
1510        (print-short "Axel Seibert" "seiberta@informatik.tu-muenchen.de")
1511        (print-short "Odd-Magne Sekkingstad" "oddms@ii.uib.no")
1512        (print-short "Gregory Neil Shapiro" "gshapiro@sendmail.org")
1513        (print-short "Justin Sheehy" "justin@linus.mitre.org")
1514        (print-short "John Shen" "zfs60@cas.org")
1515        (print-short "Murata Shuuichirou" "mrt@mickey.ai.kyutech.ac.jp")
1516        (print-short "Matt Simmons" "simmonmt@acm.org")
1517        (print-short "Dinesh Somasekhar" "somasekh@ecn.purdue.edu")
1518        (print-short "Jeffrey Sparkes" "jsparkes@bnr.ca")
1519        (print-short "Manoj Srivastava" "srivasta@pilgrim.umass.edu")
1520        (print-short "Francois Staes" "frans@kiwi.uia.ac.be")
1521        (print-short "Anders Stenman" "stenman@isy.liu.se")
1522        (print-short "Jason Stewart" "jasons@cs.unm.edu")
1523        (print-short "Rick Tait" "rickt@gnu.ai.mit.edu")
1524        (print-short "TANAKA Hayashi" "tanakah@mxa.mesh.ne.jp")
1525        (print-short "Samuel Tardieu" "sam@inf.enst.fr")
1526        (print-short "James Thompson" "thompson@wg2.waii.com")
1527        (print-short "Nobu Toge" "toge@accad1.kek.jp")
1528        (print-short "Raymond L. Toy" "toy@rtp.ericsson.se")
1529        (print-short "Remek Trzaska" "remek@npac.syr.edu")
1530        (print-short "TSUTOMU Nakamura" "tsutomu@rs.kyoto.omronsoft.co.jp")
1531        (print-short "Stefanie Teufel" "s.teufel@ndh.net")
1532        (print-short "Gary Thomas" "g.thomas@opengroup.org")
1533        (print-short "Stephen Turnbull" "turnbull@sk.tsukuba.ac.jp")
1534        (print-short "John Turner" "turner@xdiv.lanl.gov")
1535        (print-short "UENO Fumihiro" "7m2vej@ritp.ye.IHI.CO.JP")
1536        (print-short "Aki Vehtari" "Aki.Vehtari@hut.fi")
1537        (print-short "Juan E. Villacis" "jvillaci@cs.indiana.edu")
1538        (print-short "Vladimir Vukicevic" "vladimir@intrepid.com")
1539        (print-short "Charles G. Waldman" "cgw@fnal.gov")
1540        (print-short "David Walte" "djw18@cornell.edu")
1541        (print-short "Peter Ware" "ware@cis.ohio-state.edu")
1542        (print-short "Christoph Wedler" "wedler@fmi.uni-passau.de")
1543        (print-short "Yoav Weiss" "yoav@zeus.datasrv.co.il")
1544        (print-short "Peter B. West" "p.west@uq.net.au")
1545        (print-short "Rod Whitby" "rwhitby@asc.corp.mot.com")
1546        (print-short "Rich Williams" "rdw@hplb.hpl.hp.com")
1547        (print-short "Raymond Wiker" "raymond@orion.no")
1548        (print-short "Peter Windle" "peterw@SDL.UG.EDS.COM")
1549        (print-short "David C Worenklein" "dcw@gcm.com")
1550        (print-short "Takeshi Yamada" "yamada@sylvie.kecl.ntt.jp")
1551        (print-short "Katsumi Yamaoka" "yamaoka@ga.sony.co.jp")
1552        (print-short "Jason Yanowitz" "yanowitz@eternity.cs.umass.edu")
1553        (print-short "La Monte Yarroll" "piggy@hilbert.maths.utas.edu.au")
1554        (print-short "Blair Zajac" "blair@olympia.gps.caltech.edu")
1555        (print-short "Volker Zell" "vzell@de.oracle.com")
1556        (print-short "Daniel Zivkovic" "daniel@canada.sun.com")
1557        (print-short "Karel Zuiderveld" "Karel.Zuiderveld@cv.ruu.nl")
1558        "\n"))
1559     (about-finish-buffer)))
1560
1561 ;;; about.el ends here