428
+ − 1 ;;; about.el --- the About The Authors page (shameless self promotion).
+ − 2
+ − 3 ;; Copyright (c) 1997 Free Software Foundation, Inc.
479
+ − 4 ;; Copyright (C) 2001 Ben Wing.
428
+ − 5
+ − 6 ;; Keywords: extensions
479
+ − 7 ;; Version: 2.5
+ − 8 ;; Maintainer: XEmacs Development Team
428
+ − 9
+ − 10 ;; This file is part of XEmacs.
+ − 11
+ − 12 ;; XEmacs is free software; you can redistribute it and/or modify it
+ − 13 ;; under the terms of the GNU General Public License as published by
+ − 14 ;; the Free Software Foundation; either version 2, or (at your option)
+ − 15 ;; any later version.
+ − 16
+ − 17 ;; XEmacs is distributed in the hope that it will be useful, but
+ − 18 ;; WITHOUT ANY WARRANTY; without even the implied warranty of
+ − 19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ − 20 ;; General Public License for more details.
+ − 21
+ − 22 ;; You should have received a copy of the GNU General Public License
+ − 23 ;; along with XEmacs; see the file COPYING. If not, write to the
+ − 24 ;; Free Software Foundation, 59 Temple Place - Suite 330,
+ − 25 ;; Boston, MA 02111-1307, USA.
+ − 26
+ − 27 ;;; Synched up with: Not in FSF.
+ − 28
+ − 29 ;; Original code: Jamie Zawinski <jwz@jwz.org>
+ − 30 ;; Text: Ben Wing <ben@xemacs.org>, Jamie Zawinski <jwz@jwz.org>
+ − 31 ;; Hard: Amiga 1000, Progressive Peripherals Frame Grabber.
+ − 32 ;; Soft: FG 2.0, DigiPaint 3.0, pbmplus (dec 91), xv 3.0.
+ − 33 ;; Modified for 19.11 by Eduardo Pelegri-Llopart <pelegri@eng.sun.com>
+ − 34 ;; and Chuck Thompson <cthomp@xemacs.org>
+ − 35 ;; More hacking for 19.12 by Chuck Thompson and Ben Wing.
+ − 36 ;; 19.13 and 19.14 updating done by Chuck Thompson.
+ − 37 ;; 19.15 and 20.0 updating done by Steve Baur and Martin Buchholz.
+ − 38
+ − 39 ;; Completely rewritten for 20.3 by Hrvoje Niksic <hniksic@xemacs.org>.
+ − 40 ;; The original had no version numbers; I numbered the rewrite as 2.0.
479
+ − 41 ;; Extensively revamped and most text rewritten by Ben Wing
+ − 42 ;; <ben@xemacs.org> for 21.4.
428
+ − 43
+ − 44 ;; Many things in this file are to gag. Ideally, we should just use
+ − 45 ;; HTML (or some other extension, e.g. info) for this sort of thing.
+ − 46 ;; However, W3 loads too long and is too large to be dumped with
+ − 47 ;; XEmacs.
+ − 48
+ − 49 ;; If you think this is ugly now -- o boy, you should have seen it
+ − 50 ;; before.
+ − 51
+ − 52 (require 'wid-edit)
+ − 53
+ − 54 ;; People in this list have their individual links from the main page,
+ − 55 ;; or from the `Legion' page. If they have an image, it should be
+ − 56 ;; named after the CAR of the list element (baw -> baw.png).
+ − 57 ;;
+ − 58 ;; If you add to this list, you'll want to update
479
+ − 59 ;; `about-personal-info' and `about-hackers', and add the name to one
+ − 60 ;; of the three mutually exclusive lists just below.
+ − 61
+ − 62 (defface about-headline-face
+ − 63 '((((class color) (background dark))
+ − 64 (:foreground "red" :bold t))
+ − 65 ;; red4 is hardly different from black on windows.
+ − 66 (((class color) (background light)
+ − 67 (type mswindows))
+ − 68 (:foreground "red" :bold t))
+ − 69 (((class color) (background light))
+ − 70 (:foreground "red4" :bold t))
+ − 71 (((class grayscale) (background light))
+ − 72 (:foreground "LightGray" :bold t))
+ − 73 (((class grayscale) (background dark))
+ − 74 (:foreground "DimGray" :bold t))
+ − 75 (t (:bold t)))
+ − 76 "Face used for color-highlighted headlines in the About page.")
+ − 77
+ − 78 (defface about-link-face
+ − 79 '((((class color) (background dark))
+ − 80 (:foreground "blue" :underline t))
+ − 81 ;; blue4 is hardly different from black on windows.
+ − 82 (((class color) (background light) (type mswindows))
+ − 83 (:foreground "blue3" :underline t))
+ − 84 (((class color) (background light))
+ − 85 (:foreground "blue4" :underline t))
+ − 86 (((class grayscale) (background light))
+ − 87 (:foreground "DimGray" :bold t :italic t :underline t))
+ − 88 (((class grayscale) (background dark))
+ − 89 (:foreground "LightGray" :bold t :italic t :underline t))
+ − 90 (t (:underline t)))
+ − 91 "Face used for links in the About page.")
+ − 92
428
+ − 93 (defvar xemacs-hackers
479
+ − 94 '(
+ − 95 ;; to sort the stuff below, use M-x sort-regexp-fields RET
+ − 96 ;; ^.*$ RET (\([a-z]*\) RET
+ − 97 (adrian "Adrian Aichner" "adrian@xemacs.org")
+ − 98 (aj "Andreas Jaeger" "aj@xemacs.org")
+ − 99 (ajc "Andrew Cosgriff" "ajc@xemacs.org")
+ − 100 (alastair "Alastair Houghton" "alastair@xemacs.org")
+ − 101 (baw "Barry Warsaw" "bwarsaw@xemacs.org")
+ − 102 (ben "Ben Wing" "ben@xemacs.org")
+ − 103 (bw "Bob Weiner" "weiner@xemacs.org")
+ − 104 (cgw "Charles Waldman" "cgw@xemacs.org")
+ − 105 (chr "Christian Nyb�" "chr@xemacs.org")
+ − 106 (craig "Craig Lanning" "craig@xemacs.org")
428
+ − 107 (cthomp "Chuck Thompson" "cthomp@xemacs.org")
479
+ − 108 (daiki "Daiki Ueno" "daiki@xemacs.org")
+ − 109 (dan "Dan Holmsand" "dan@xemacs.org")
+ − 110 (darrylo "Darryl Okahata" "darrylo@xemacs.org")
+ − 111 (devin "Matthieu Devin" "devin@xemacs.org")
+ − 112 (dkindred "Darrell Kindred" "dkindred@xemacs.org")
+ − 113 (dmoore "David Moore" "dmoore@xemacs.org")
452
+ − 114 (dv "Didier Verna" "didier@xemacs.org")
479
+ − 115 (eb "Eric Benson" "eb@xemacs.org")
+ − 116 (fabrice "Fabrice Popineau" "fabrice@xemacs.org")
+ − 117 (golubev "I N Golubev" "golubev@xemacs.org")
+ − 118 (gunnar "Gunnar Evermann" "gunnar@xemacs.org")
+ − 119 (hbs "Harlan Sexton" "hbs@xemacs.org")
+ − 120 (hisashi "Hisashi Miyashita" "hisashi@xemacs.org")
+ − 121 (hmuller "Hans Muller" "hmuller@xemacs.org")
428
+ − 122 (hniksic "Hrvoje Niksic" "hniksic@xemacs.org")
479
+ − 123 (hobley "David hobley" "hobley@xemacs.org")
+ − 124 (jan "Jan Vroonhof" "jan@xemacs.org")
+ − 125 (jareth "Jareth Hein" "jareth@xemacs.org")
460
+ − 126 (jason "Jason R. Mastaler" "jason@xemacs.org")
479
+ − 127 (jens "Jens Lautenbacher" "jens@xemacs.org")
+ − 128 (jmiller "Jeff Miller" "jmiller@xemacs.org")
+ − 129 (jonathan "Jonathan Harris" "jonathan@xemacs.org")
+ − 130 (juhp "Jens-Ulrik Holger Petersen" "petersen@xemacs.org")
+ − 131 (jwz "Jamie Zawinski" "jwz@xemacs.org")
442
+ − 132 (kazz "IENAGA Kazuyuki" "ienaga@xemacs.org")
479
+ − 133 (kirill "Kirill Katsnelson" "kirill@xemacs.org")
+ − 134 (kyle "Kyle Jones" "kyle@xemacs.org")
+ − 135 (larsi "Lars Magne Ingebrigtsen" "larsi@xemacs.org")
+ − 136 (marcpa "Marc Paquette" "marcpa@xemacs.org")
428
+ − 137 (martin "Martin Buchholz" "martin@xemacs.org")
479
+ − 138 (mcook "Michael R. Cook" "mcook@xemacs.org")
+ − 139 (mly "Richard Mlynarik" "mly@xemacs.org")
+ − 140 (morioka "MORIOKA Tomohiko" "morioka@xemacs.org")
+ − 141 (mta "Mike Alexander" "mta@xemacs.org")
+ − 142 (ograf "Oliver Graf" "ograf@xemacs.org")
+ − 143 (olivier "Olivier Galibert" "olivier@xemacs.org")
+ − 144 (oscar "Oscar Figueiredo" "oscar@xemacs.org")
+ − 145 (pelegri "Eduardo Pelegri-Llopart" "pelegri@xemacs.org")
+ − 146 (pez "Peter Pezaris" "pez@xemacs.org")
428
+ − 147 (piper "Andy Piper" "andy@xemacs.org")
479
+ − 148 (pittman "Daniel Pittman" "pittman@xemacs.org")
+ − 149 (rickc "Rick Campbell" "rickc@xemacs.org")
+ − 150 (rose "John Rose" "rose@xemacs.org")
+ − 151 (rossini "Anthony Rossini" "rossini@xemacs.org")
+ − 152 (slb "Steve Baur" "steve@xemacs.org")
487
+ − 153 (sperber "Michael Sperber" "mike@xemacs.org")
479
+ − 154 (stig "Jonathan Stigelman" "stig@xemacs.org")
+ − 155 (stigb "Stig Bjorlykke" "stigb@xemacs.org")
428
+ − 156 (thiessel "Marcus Thiessel" "marcus@xemacs.org")
479
+ − 157 (tomonori "Tomonori Ikeyama" "tomonori@xemacs.org")
+ − 158 (tuck "Matt Tucker" "tuck@xemacs.org")
+ − 159 (turnbull "Stephen Turnbull" "turnbull@xemacs.org")
+ − 160 (vin "Vin Shelton" "acs@xemacs.org")
+ − 161 (vladimir "Vladimir Ivanovic" "vladimir@xemacs.org")
+ − 162 (wmperry "William Perry" "wmperry@xemacs.org")
+ − 163 (yoshiki "Yoshiki Hayashi" "yoshiki@xemacs.org")
+ − 164 (youngs "Steve Youngs" "youngs@xemacs.org")
+ − 165 )
428
+ − 166 "Alist of XEmacs hackers.")
+ − 167
479
+ − 168 (defvar about-current-release-maintainers
+ − 169 ;; this list should not necessarily be in sorted order.
+ − 170 '(turnbull adrian ben hniksic jason martin piper sperber youngs))
+ − 171
+ − 172 (defvar about-other-current-hackers
+ − 173 ;; to sort this list or the one below, use:
+ − 174 ;; M-x sort-regexp-fields RET [a-z]+ RET \(.*\) RET
+ − 175 '(aj alastair cgw craig daiki dan dv fabrice golubev gunnar hisashi
+ − 176 jan jareth jmiller jonathan kazz kirill larsi morioka mta ograf
+ − 177 olivier oscar pittman tomonori tuck vin wmperry yoshiki))
+ − 178
+ − 179 (defvar about-once-and-future-hackers
+ − 180 '(ajc baw bw chr cthomp darrylo devin dkindred dmoore eb hbs hmuller
+ − 181 hobley jens juhp jwz kyle marcpa mcook mly ograf pelegri pez
+ − 182 rickc rose rossini slb stig stigb thiessel vladimir))
+ − 183
428
+ − 184 ;; The CAR of alist elements is a valid argument to `about-url-link'.
+ − 185 ;; It is preferred to a simple string, because it makes maintenance
+ − 186 ;; easier. Please add new URLs to this list.
+ − 187 (defvar about-url-alist
479
+ − 188 ;; to sort the stuff below, use M-x sort-regexp-fields RET
+ − 189 ;; ^.*$ RET (\([a-z]*\) RET
428
+ − 190 '((ajc . "http://www-personal.monash.edu.au/~ajc/")
487
+ − 191 (alastair . "http://website.lineone.net/~ajhoughton/")
479
+ − 192 (baw . "http://barry.wooz.org/")
428
+ − 193 (ben . "http://www.666.com/ben/")
479
+ − 194 (ben-xemacs . "http://www.xemacs.org/Architecting-XEmacs/index.html")
+ − 195 (beopen . "http://www.beopen.com/")
+ − 196 (cc-mode . "http://cc-mode.sourceforge.net/")
428
+ − 197 (chr . "http://www.xemacs.org/faq/")
479
+ − 198 (daiki . "http://deisui.bug.org/diary/servlet/view")
428
+ − 199 (dkindred . "http://www.cs.cmu.edu/People/dkindred/me.html")
+ − 200 (dmoore . "http://oj.egbt.org/dmoore/")
452
+ − 201 (dv . "http://www.lrde.epita.fr/~didier/")
479
+ − 202 (fabrice . "http://www.ese-metz.fr/~popineau/")
+ − 203 (fptex . "http://www.fptex.org/")
428
+ − 204 (jason . "http://www.mastaler.com/")
479
+ − 205 (juhp . "http://www.01.246.ne.jp/~juhp/")
428
+ − 206 (jwz . "http://www.jwz.org/")
+ − 207 (kazz . "http://www.imasy.or.jp/~kazz/")
+ − 208 (kyle . "http://www.wonderworks.com/kyle/")
479
+ − 209 (larsi . "http://quimby.gnus.org/lmi/")
428
+ − 210 (marcpa . "http://www.positron911.com/products/power.htm")
+ − 211 (ograf . "http://www.fga.de/~ograf/")
479
+ − 212 (pez . "http://cbs.sportsline.com/")
428
+ − 213 (piper . "http://www.xemacs.freeserve.co.uk/")
479
+ − 214 (rossini . "http://faculty.washington.edu/rossini/")
+ − 215 (stigb . "http://www.tihlde.hist.no/~stigb/")
428
+ − 216 (vin . "http://www.upa.org/")
479
+ − 217 (vladimir . "http://www.leonora.org/~vladimir/")
481
+ − 218 (wget . "http://sunsite.dk/wget/")
479
+ − 219 (xemacs . "http://www.xemacs.org/")
+ − 220 (youngs . "http://eicq.sourceforge.net/"))
428
+ − 221 "Some of the more important URLs.")
+ − 222
+ − 223 (defvar about-left-margin 3)
+ − 224
479
+ − 225 (defun about-lookup-url (name)
+ − 226 (let ((result (cdr (assq name about-url-alist))))
+ − 227 (assert result)
+ − 228 result))
+ − 229
+ − 230 ;; Insert a URL link in the buffer. TEXT-TO-INSERT is the text that will
+ − 231 ;; be hyperlinked; if omitted, the URL is used. HELP-ECHO is some text that
+ − 232 ;; will be displayed when the mouse moves over the link.
+ − 233 (defun about-url-link (url &optional text-to-insert help-echo)
+ − 234 (assert url)
+ − 235 (when (symbolp url)
+ − 236 (setq url (about-lookup-url url)))
+ − 237 (when (and text-to-insert (symbolp text-to-insert))
+ − 238 (setq text-to-insert (about-lookup-url text-to-insert)))
428
+ − 239 (widget-create 'url-link
+ − 240 :button-prefix ""
+ − 241 :button-suffix ""
479
+ − 242 :help-echo help-echo
+ − 243 :tag (or text-to-insert url)
+ − 244 url))
+ − 245
482
+ − 246 ;; Insert a mail link in the buffer.
479
+ − 247 (defun about-mailto-link (address)
482
+ − 248 (lexical-let ((address address))
+ − 249 (widget-create 'link
+ − 250 :tag address
+ − 251 :button-prefix ""
+ − 252 :button-suffix ""
+ − 253 :action (lambda (widget &optional event)
+ − 254 (compose-mail address))
+ − 255 :help-echo (format "Send mail to %s" address))))
428
+ − 256
+ − 257 ;; Attach a face to a string, in order to be inserted into the buffer.
+ − 258 ;; Make sure that the extent is duplicable, but unique. Returns the
+ − 259 ;; string.
+ − 260 (defun about-with-face (string face)
+ − 261 (let ((ext (make-extent 0 (length string) string)))
+ − 262 (set-extent-property ext 'duplicable t)
+ − 263 (set-extent-property ext 'unique t)
+ − 264 (set-extent-property ext 'start-open t)
+ − 265 (set-extent-property ext 'end-open t)
+ − 266 (set-extent-face ext face))
+ − 267 string)
+ − 268
+ − 269 ;; Switch to buffer NAME. If it doesn't exist, make it and switch to it.
+ − 270 (defun about-get-buffer (name)
+ − 271 (cond ((get-buffer name)
+ − 272 (switch-to-buffer name)
+ − 273 (delete-other-windows)
+ − 274 (goto-char (point-min))
+ − 275 name)
+ − 276 (t
+ − 277 (switch-to-buffer name)
+ − 278 (delete-other-windows)
+ − 279 (buffer-disable-undo)
479
+ − 280 ;; #### This is a temporary fix until wid-edit gets fixed right.
+ − 281 ;; We don't do everything that widget-button-click does -- i.e.
+ − 282 ;; we don't change the link color on button down -- but that's
+ − 283 ;; not important.
+ − 284 (add-local-hook
+ − 285 'mouse-track-click-hook
+ − 286 #'(lambda (event count)
+ − 287 (cond
+ − 288 ((widget-event-point event)
+ − 289 (let* ((pos (widget-event-point event))
+ − 290 (button (get-char-property pos 'button)))
+ − 291 (when button
+ − 292 (widget-apply-action button event)
+ − 293 t))))))
428
+ − 294 (set-specifier left-margin-width about-left-margin (current-buffer))
479
+ − 295 (set (make-local-variable 'widget-button-face) 'about-link-face)
428
+ − 296 nil)))
+ − 297
+ − 298 ;; Set up the stuff needed by widget. Allowed types are `bury' and
482
+ − 299 ;; `kill'. The reason why we offer both types is performance: when a
+ − 300 ;; large buffer is merely buried, `about' will find it again when the
+ − 301 ;; user requests it, instead of recreating it. Small buffers can be
+ − 302 ;; killed because it is cheap to generate their contents.
+ − 303
428
+ − 304 (defun about-finish-buffer (&optional type)
+ − 305 (or type (setq type 'bury))
+ − 306 (widget-insert "\n")
+ − 307 (if (eq type 'bury)
482
+ − 308 (widget-create 'link
+ − 309 :help-echo "Bury this buffer"
+ − 310 :action (lambda (widget event)
483
+ − 311 (if event
+ − 312 ;; For some reason,
+ − 313 ;; (bury-buffer (event-buffer event))
+ − 314 ;; doesn't work.
+ − 315 (with-selected-window (event-window event)
+ − 316 (bury-buffer))
482
+ − 317 (bury-buffer)))
+ − 318 :tag "Bury")
+ − 319 (widget-create 'link
+ − 320 :help-echo "Kill this buffer"
+ − 321 :action (lambda (widget event)
483
+ − 322 (if event
+ − 323 (kill-buffer (event-buffer event))
+ − 324 (kill-buffer (current-buffer))))
482
+ − 325 :tag "Kill"))
479
+ − 326 (widget-insert " this buffer and return to previous.\n")
428
+ − 327 (use-local-map (make-sparse-keymap))
+ − 328 (set-keymap-parent (current-local-map) widget-keymap)
+ − 329 (if (eq type 'bury)
+ − 330 (progn
+ − 331 (local-set-key "q" 'bury-buffer)
+ − 332 (local-set-key "l" 'bury-buffer))
+ − 333 (let ((dispose (lambda () (interactive) (kill-buffer (current-buffer)))))
+ − 334 (local-set-key "q" dispose)
+ − 335 (local-set-key "l" dispose)))
+ − 336 (local-set-key " " 'scroll-up)
479
+ − 337 (local-set-key [backspace] 'scroll-down)
428
+ − 338 (local-set-key "\177" 'scroll-down)
+ − 339 (widget-setup)
+ − 340 (goto-char (point-min))
+ − 341 (toggle-read-only 1)
+ − 342 (set-buffer-modified-p nil))
+ − 343
+ − 344 ;; Make the appropriate number of spaces.
+ − 345 (defun about-center (string-or-glyph)
+ − 346 (let ((n (- (startup-center-spaces string-or-glyph) about-left-margin)))
+ − 347 (make-string (if (natnump n) n 0) ?\ )))
+ − 348
+ − 349 ;; Main entry page.
+ − 350
+ − 351 ;;;###autoload
+ − 352 (defun about-xemacs ()
+ − 353 "Describe the True Editor and its minions."
+ − 354 (interactive)
+ − 355 (unless (about-get-buffer "*About XEmacs*")
+ − 356 (widget-insert (about-center xemacs-logo))
+ − 357 (widget-create 'default
+ − 358 :format "%t"
+ − 359 :tag-glyph xemacs-logo)
+ − 360 (widget-insert "\n")
+ − 361 (let* ((emacs-short-version (format "%d.%d"
+ − 362 emacs-major-version
+ − 363 emacs-minor-version))
479
+ − 364 (emacs-about-version (format "version %s; April 2001"
428
+ − 365 emacs-short-version)))
+ − 366 (widget-insert (about-center emacs-about-version))
479
+ − 367 (widget-create 'link :help-echo "What's new in XEmacs"
428
+ − 368 :action 'about-news
+ − 369 emacs-about-version))
+ − 370
+ − 371 (widget-insert
+ − 372 "\n\n"
479
+ − 373 (about-with-face "XEmacs" 'bold-italic)
+ − 374 " is a powerful, highly customizable open source text editor and
+ − 375 application development system, with full GUI support. It is protected
+ − 376 under the GNU Public License and related to other versions of Emacs, in
+ − 377 particular GNU Emacs. Its emphasis is on modern graphical user
+ − 378 interface support and an open software development model, similar to
+ − 379 Linux. XEmacs has an active development community numbering in the
+ − 380 hundreds (and thousands of active beta testers on top of this), and runs
+ − 381 on all versions of MS Windows, on Linux, and on nearly every other
+ − 382 version of Unix in existence. ")
428
+ − 383 (widget-create 'link :help-echo "An XEmacs history lesson"
+ − 384 :action 'about-collaboration
+ − 385 :button-prefix ""
+ − 386 :button-suffix ""
479
+ − 387 "Support for XEmacs")
428
+ − 388 (widget-insert
479
+ − 389 " has been supplied by
+ − 390 Sun Microsystems, University of Illinois, Lucid, ETL/Electrotechnical
+ − 391 Laboratory, Amdahl Corporation, BeOpen, and others, as well as the
+ − 392 unpaid time of a great number of individual developers.
428
+ − 393
479
+ − 394 XEmacs has many ")
+ − 395 (widget-create 'link :help-echo "See a list of XEmacs advantages over GNU Emacs"
+ − 396 :action 'about-advantages
+ − 397 :button-prefix ""
+ − 398 :button-suffix ""
+ − 399 "advantages")
+ − 400 (widget-insert " over GNU Emacs. In addition, XEmacs 21.4
+ − 401 provides many ")
+ − 402 (widget-create 'link :help-echo "See a list of new features in XEmacs 21.4"
+ − 403 :action 'about-news
428
+ − 404 :button-prefix ""
+ − 405 :button-suffix ""
+ − 406 "new features")
479
+ − 407 (widget-insert " not found in previous versions of XEmacs.
+ − 408 More details on XEmacs's functionality, including bundled packages, can
+ − 409 be obtained through the ")
428
+ − 410 (widget-create 'info-link
+ − 411 :help-echo "Browse the info system"
+ − 412 :button-prefix ""
+ − 413 :button-suffix ""
+ − 414 :tag "info"
+ − 415 "(dir)")
+ − 416
+ − 417 (widget-insert
+ − 418 " on-line information system.\n
+ − 419 The XEmacs web page can be browsed, using any WWW browser at\n
+ − 420 \t\t ")
479
+ − 421 (about-url-link 'xemacs nil "Visit XEmacs WWW page")
428
+ − 422 (widget-insert "\n
+ − 423 Note that W3 (XEmacs's own browser), might need customization (due to
+ − 424 firewalls) in order to work correctly.
+ − 425
+ − 426 XEmacs is the result of the time and effort of many people. The
+ − 427 developers responsible for this release are:\n\n")
+ − 428
+ − 429 (flet ((setup-person (who)
+ − 430 (widget-insert "\t* ")
+ − 431 (let* ((entry (assq who xemacs-hackers))
+ − 432 (name (cadr entry))
+ − 433 (address (caddr entry)))
+ − 434 (widget-create 'link
+ − 435 :help-echo (concat "Find out more about " name)
+ − 436 :button-prefix ""
+ − 437 :button-suffix ""
+ − 438 :action 'about-maintainer
+ − 439 :tag name
+ − 440 :value who)
+ − 441 (widget-insert (format " <%s>\n" address)))))
+ − 442 ;; Setup persons responsible for this release.
479
+ − 443 (mapc 'setup-person about-current-release-maintainers)
428
+ − 444 (widget-insert "\n\t* ")
+ − 445 (widget-create 'link :help-echo "A legion of XEmacs hackers"
+ − 446 :action 'about-hackers
+ − 447 :button-prefix ""
+ − 448 :button-suffix ""
479
+ − 449 "The full list of contributors...")
428
+ − 450 (widget-insert "\n
479
+ − 451 Steve Baur was the primary maintainer for 19.15 through 21.0.\n\n")
+ − 452 (setup-person 'slb)
428
+ − 453 (widget-insert "
479
+ − 454 Chuck Thompson and Ben Wing were the maintainers for 19.11 through 19.14
+ − 455 and heavy code contributors for 19.8 through 19.10.\n\n")
+ − 456 (setup-person 'cthomp)
+ − 457 (setup-person 'ben)
+ − 458 (widget-insert "
+ − 459 Jamie Zawinski was the maintainer for 19.0 through 19.10 (the entire
+ − 460 history of Lucid Emacs).\n\n")
+ − 461 (setup-person 'jwz))
+ − 462 (about-finish-buffer)
+ − 463 ;; it looks horrible with the cursor on the first line, since it's
+ − 464 ;; so big.
+ − 465 (goto-line 2)))
428
+ − 466
+ − 467 ;; View news
+ − 468 (defun about-news (&rest ignore)
+ − 469 (view-emacs-news)
+ − 470 (message "%s" (substitute-command-keys
+ − 471 "Press \\[kill-buffer] to exit this buffer")))
+ − 472
+ − 473 (defun about-collaboration (&rest ignore)
+ − 474 (unless (about-get-buffer "*About Collaboration*")
+ − 475 (let ((title "Why Another Version of Emacs"))
+ − 476 (widget-insert
+ − 477 "\n"
+ − 478 (about-center title)
+ − 479 (about-with-face title 'bold)))
+ − 480 (widget-insert
+ − 481 "\n\n"
+ − 482 (about-with-face "The Lucid, Inc. Point of View"
+ − 483 'italic)
+ − 484 " (quite outdated)\n
+ − 485 At the time of the inception of Lucid Emacs (the former name of
+ − 486 XEmacs), Lucid's latest product was Energize, a C/C++ development
+ − 487 environment. Rather than invent (and force our users to learn) a new
+ − 488 user interface, we chose to build part of our environment on top of
+ − 489 the world's best editor, GNU Emacs. (Though our product is
+ − 490 commercial, the work we did on GNU Emacs is free software, and is
+ − 491 useful in its own right.)
+ − 492
+ − 493 We needed a version of Emacs with mouse-sensitive regions, multiple
+ − 494 fonts, the ability to mark sections of a buffer as read-only, the
+ − 495 ability to detect which parts of a buffer have been modified, and many
+ − 496 other features.
+ − 497
+ − 498 For our purposes, the existing version of Epoch was not sufficient; it
+ − 499 did not allow us to put arbitrary pixmaps/icons in buffers, `undo' did
+ − 500 not restore changes to regions, regions did not overlap and merge
+ − 501 their attributes in the way we needed, and several other things.
+ − 502
+ − 503 We could have devoted our time to making Epoch do what we needed (and,
+ − 504 in fact, we spent some time doing that in 1990) but, since the FSF
+ − 505 planned to include Epoch-like features in their version 19, we decided
+ − 506 that our efforts would be better spent improving Emacs 19 instead of
+ − 507 Epoch.
+ − 508
+ − 509 Our original hope was that our changes to Emacs would be incorporated
+ − 510 into the \"official\" v19. However, scheduling conflicts arose, and
+ − 511 we found that, given the amount of work still remaining to be done, we
+ − 512 didn't have the time or manpower to do the level of coordination that
+ − 513 would be necessary to get our changes accepted by the FSF.
+ − 514 Consequently, we released our work as a forked branch of Emacs,
+ − 515 instead of delaying any longer.
+ − 516
+ − 517 Roughly a year after Lucid Emacs 19.0 was released, a beta version of
+ − 518 the FSF branch of Emacs 19 was released. The FSF version is better in
+ − 519 some areas, and worse in others, as reflects the differing focus of
+ − 520 our development efforts.
+ − 521
+ − 522 We plan to continue developing and supporting Lucid Emacs, and merging
+ − 523 in bug fixes and new features from the FSF branch as appropriate; we
+ − 524 do not plan to discard any of the functionality that we implemented
+ − 525 which RMS has chosen not to include in his version.
+ − 526
+ − 527 Certain elements of Lucid Emacs, or derivatives of them, have been
+ − 528 ported to the FSF version. We have not been doing work in this
+ − 529 direction, because we feel that Lucid Emacs has a cleaner and more
+ − 530 extensible substrate, and that any kind of merger between the two
+ − 531 branches would be far easier by merging the FSF changes into our
+ − 532 version than the other way around.
+ − 533
+ − 534 We have been working closely with the Epoch developers to merge in the
+ − 535 remaining Epoch functionality which Lucid Emacs does not yet have.
+ − 536 Epoch and Lucid Emacs will soon be one and the same thing. Work is
+ − 537 being done on a compatibility package which will allow Epoch 4 code to
+ − 538 run in XEmacs with little or no change.\n\n"
+ − 539 (about-with-face "The Sun Microsystems, Inc. Point of View"
+ − 540 'italic)
+ − 541 "\n
+ − 542 Emacs 18 has been around for a long, long time. Version 19 was
+ − 543 supposed to be the successor to v18 with X support. It was going to
+ − 544 be available \"real soon\" for a long time (some people remember
+ − 545 hearing about v19 as early as 1984!), but it never came out. v19
+ − 546 development was going very, very slowly, and from the outside it
+ − 547 seemed that it was not moving at all. In the meantime other people
+ − 548 gave up waiting for v19 and decided to build their own X-aware
+ − 549 Emacsen. The most important of these was probably Epoch, which came
+ − 550 from the University of Illinois (\"UofI\") and was based on v18.
+ − 551
+ − 552 Around 1990, the Developer Products group within Sun Microsystems
+ − 553 Inc., decided that it wanted an integrated editor. (This group is now
+ − 554 known as DevPro. It used to be known as SunPro - the name was changed
+ − 555 in mid-1994.) They contracted with the University of Illinois to
+ − 556 provide a number of basic enhancements to the functionality in Epoch.
+ − 557 UofI initially was planning to deliver this on top of Epoch code.
+ − 558
+ − 559 In the meantime, (actually some time before they talked with UofI)
+ − 560 Lucid had decided that it also wanted to provide an integrated
+ − 561 environment with an integrated editor. Lucid decided that the Version
+ − 562 19 base was a better one than Version 18 and thus decided not to use
+ − 563 Epoch but instead to work with Richard Stallman, the head of the Free
+ − 564 Software Foundation and principal author of Emacs, on getting v19 out.
+ − 565 At some point Stallman and Lucid parted ways. Lucid kept working and
+ − 566 got a v19 out that they called Lucid Emacs 19.
+ − 567
+ − 568 After Lucid's v19 came out it became clear to us (the UofI and Sun)
+ − 569 that the right thing to do was to push for an integration of both
+ − 570 Lucid Emacs and Epoch, and to get the deliverables that Sun was asking
+ − 571 from the University of Illinois on top of this integrated platform.
+ − 572 Until 1994, Sun and Lucid both actively supported XEmacs as part of
+ − 573 their product suite and invested a comparable amount of effort into
+ − 574 it. Substantial portions of the current code have originated under
+ − 575 the support of Sun, either directly within Sun, or at UofI but paid
+ − 576 for by Sun. This code was kept away from Lucid for a while, but later
+ − 577 was made available to them. Initially Lucid didn't know that Sun was
+ − 578 supporting UofI, but later Sun was open about it.
+ − 579
+ − 580 Around 1992 DevPro-originated code started showing up in Lucid Emacs,
+ − 581 starting with the infusion of the Epoch redisplay code. The separate
+ − 582 code bases at Lucid, Sun, and the University of Illinois were merged,
+ − 583 allowing a single XEmacs to evolve from that point on.
+ − 584
+ − 585 Sun originally called the integrated product ERA, for \"Emacs
+ − 586 Rewritten Again\". SunPro and Lucid eventually came to an agreement
+ − 587 to find a name for the product that was not specific to either
+ − 588 company. An additional constraint that Lucid placed on the name was
+ − 589 that it must contain the word \"Emacs\" in it -- thus \"ERA\" was not
+ − 590 acceptable. The tentatively agreed-upon name was \"XEmacs\", and this
+ − 591 has been the name of the program since version 19.11.)
+ − 592
+ − 593 As of 1997, Sun is shipping XEmacs as part of its Developer Products
+ − 594 integrated programming environment \"Sun WorkShop\". Sun is
+ − 595 continuing to support XEmacs development, with focus on
+ − 596 internationalization and quality improvement.\n\n"
+ − 597 (about-with-face "Lucid goes under" 'italic)
+ − 598 "\n
+ − 599 Around mid-'94, Lucid went out of business. Lucid founder Richard
+ − 600 Gabriel's book \"Patterns of Software\", which is highly recommended
+ − 601 reading in any case, documents the demise of Lucid and suggests
+ − 602 lessons to be learned for the whole software development community.
+ − 603
+ − 604 Development on XEmacs, however, has continued unabated under the
+ − 605 auspices of Sun Microsystems and the University of Illinois, with help
+ − 606 from Amdahl Corporation and INS Engineering Corporation. Sun plans to
+ − 607 continue to support XEmacs into the future.\n\n"
+ − 608 (about-with-face "The Amdahl Corporation point of view"
+ − 609 'italic)
+ − 610 "\n
+ − 611 Amdahl Corporation's Storage Products Group (SPG) uses XEmacs as the
+ − 612 focal point of a environment for development of the microcode used in
+ − 613 Amdahl's large-scale disk arrays, or DASD's. SPG has joint ventures
+ − 614 with Japanese companies, and decided in late 1994 to contract out for
+ − 615 work on XEmacs in order to hasten the development of Mule support
+ − 616 \(i.e. support for Japanese, Chinese, etc.) in XEmacs and as a gesture
+ − 617 of goodwill towards the XEmacs community for all the work they have
+ − 618 done on making a powerful, modern, freely available text editor.
+ − 619 Through this contract, Amdahl provided a large amount of work in
+ − 620 XEmacs in the form of rewriting the basic text-processing mechanisms
+ − 621 to allow for Mule support and writing a large amount of the support
+ − 622 for multiple devices.
+ − 623
+ − 624 Although Amdahl is no longer hiring a full-time contractor, they are
+ − 625 still funding part-time work on XEmacs and providing resources for
+ − 626 further XEmacs development.\n\n"
+ − 627 (about-with-face "The INS Engineering point of view"
+ − 628 'italic)
+ − 629 "\n
+ − 630 INS Engineering Corporation, based in Tokyo, bought rights to sell
+ − 631 Energize when Lucid went out of business. Unhappy with the
+ − 632 performance of the Japanese support in XEmacs 19.11, INS also
+ − 633 contributed to the XEmacs development from late 1994 to early
+ − 634 1995.\n")
+ − 635 (about-finish-buffer)))
+ − 636
479
+ − 637 (defun about-advantages (&rest ignore)
+ − 638 (unless (about-get-buffer "*About Advantages*")
+ − 639 (let ((title "XEmacs Advantages over GNU Emacs"))
428
+ − 640 (widget-insert
+ − 641 "\n"
+ − 642 (about-center title)
+ − 643 (about-with-face title 'bold)))
+ − 644 (widget-insert
+ − 645 "\n
479
+ − 646 * Much better GUI support:
428
+ − 647
479
+ − 648 -- a real toolbar
+ − 649 -- more comprehensive and better-designed menubars
+ − 650 -- horizontal and vertical scrollbars in all windows
+ − 651 -- proper dialog boxes
+ − 652 -- tabs for selecting buffers
+ − 653 -- support for variable-width and variable height fonts
+ − 654 -- support for arbitrary pixmaps and widgets in a buffer
+ − 655 -- face support on TTY's, including color
428
+ − 656
479
+ − 657 * An installable package system, with a huge number of packages available
+ − 658 that have been tested and are known to work with the latest version
+ − 659 of XEmacs.
428
+ − 660
479
+ − 661 * Comprehensive support for the GTK toolkit.
428
+ − 662
479
+ − 663 * An open development community, with contributions welcome and no need
+ − 664 to sign over your copyright to any organization. (Please send
+ − 665 contributions to xemacs-patches@xemacs.org. See http://www.xemacs.org
+ − 666 for more information on XEmacs mailing lists, and other info.)
428
+ − 667
+ − 668 * Support for display on multiple simultaneous X and/or TTY devices.
+ − 669
+ − 670 * Powerful, flexible control over the display characteristics of most
+ − 671 of the visual aspects of XEmacs through the use of specifiers, which
+ − 672 allow separate values to be specified for individual buffers,
+ − 673 windows, frames, devices, device classes, and device types.
+ − 674
479
+ − 675 * A clean, modern, abstracted Lisp interface to the menubar, toolbar,
+ − 676 window-system events, key combinations, extents (regions in a buffer
+ − 677 with specific properties), and all other display aspects.
428
+ − 678
+ − 679 * Proper integration with Xt and Motif (including Motif menubars and
+ − 680 scrollbars). Motif look-alike menubars and scrollbars are provided
+ − 681 for those systems without real Motif support.
+ − 682
479
+ − 683 * Many improvements to the multilingual support, such as the ability to
+ − 684 enter text for complex languages using the XIM mechanism and
+ − 685 localization of menubar text for the Japanese locale.
+ − 686 \n\n")
428
+ − 687 (about-finish-buffer)))
+ − 688
+ − 689 (defvar about-glyphs nil
+ − 690 "Cached glyphs")
+ − 691
+ − 692 ;; Return a maintainer's glyph
+ − 693 (defun about-maintainer-glyph (who)
+ − 694 (let ((glyph (cdr (assq who about-glyphs))))
+ − 695 (unless glyph
+ − 696 (let ((file (expand-file-name
+ − 697 (concat (symbol-name who)
+ − 698 (if (memq (device-class)
+ − 699 '(color grayscale))
+ − 700 "" "m")
+ − 701 ".png")
+ − 702 (locate-data-directory "photos")))
+ − 703 (data nil))
+ − 704 (setq glyph
+ − 705 (cond ((stringp data)
+ − 706 (make-glyph
+ − 707 (if (featurep 'png)
+ − 708 `([png :data ,data]
+ − 709 [string :data "[Image]"])
+ − 710 `([string :data "[Image]"]))))
+ − 711 ((eq data 'error)
+ − 712 (make-glyph [string :data "[Error]"]))
+ − 713 (file
+ − 714 (make-glyph
+ − 715 (if (featurep 'png)
+ − 716 `([png :file ,file]
+ − 717 [string :data "[Image]"])
+ − 718 `([string :data "[Image]"]))))
+ − 719 (t
+ − 720 (make-glyph [nothing]))))
+ − 721 (set-glyph-property glyph 'baseline 100)
+ − 722 ;; Cache the glyph
+ − 723 (push (cons who glyph) about-glyphs)))
+ − 724 glyph))
+ − 725
479
+ − 726 ;; Insert personal info about a maintainer. See also
+ − 727 ;; `about-hacker-contribution'. Note that the info in
+ − 728 ;; `about-hacker-contribution' is automatically displayed in the
+ − 729 ;; person's own page, so there is no need to duplicate it.
+ − 730 (defun about-personal-info (entry)
428
+ − 731 (ecase (car entry)
479
+ − 732 ;; you can sort the stuff below with something like
+ − 733 ;;(sort-regexp-fields nil
+ − 734 ;; " *(\\([^()]\\|([^()]*)\\|(\\([^()]\\|([^()]*)\\)*)\\)*)\n"
+ − 735 ;; " *(\\([a-z]*\\)"
+ − 736 ;; (region-beginning) (region-end))
+ − 737 (adrian
428
+ − 738 (widget-insert
+ − 739 "\
479
+ − 740 Sorry, no personal information available about me yet.\n"))
+ − 741 (aj
428
+ − 742 (widget-insert "\
479
+ − 743 I'm a software developer working for the SuSE Labs of the Linux
+ − 744 distributor SuSE. My main task is to improve the GNU C library.")
428
+ − 745 (widget-insert ".\n"))
+ − 746 (ajc
+ − 747 (widget-insert "\
+ − 748 When not helping maintain the XEmacs website, Andrew is a Network
+ − 749 Software Engineer(tm) for Monash University in Australia, maintaining
+ − 750 webservers and doing random other things. As well as spending spare
+ − 751 time being an Eager Young Space Cadet and fiddling with XEmacs/Gnus
+ − 752 et. al., he spends his time pursuing, among other things, a Life.
+ − 753 Some of this currently involves doing an A-Z (by country) of
+ − 754 restaurants with friends, and has, in the past, involved dyeing his
+ − 755 hair various colours (see ")
479
+ − 756 (about-url-link 'ajc nil "Visit Andrew's home page")
428
+ − 757 (widget-insert ".\n"))
479
+ − 758 (alastair
+ − 759 (widget-insert
+ − 760 "\
487
+ − 761 Alastair, apart from being an all-round hacker, occasional contributor
+ − 762 to free software projects and general good egg(!), currently works for
+ − 763 Telsis, a manufacturer of telephony equipment on the south coast of
+ − 764 England. He'd quite like to have his own company one day, but has yet
+ − 765 to think of that killer product...
+ − 766
+ − 767 See also ")
+ − 768 (about-url-link 'alastair nil "Visit Alastair's home page")
+ − 769 (widget-insert ".\n"))
479
+ − 770 (baw
428
+ − 771 (widget-insert "\
479
+ − 772 As of November 2000, I am a software engineer with the Pythonlabs at
+ − 773 Digital Creations. Pythonlabs is the core team developing and
+ − 774 maintaining the Python open source, object-oriented scripting
+ − 775 language. Digital Creations is the publisher of Zope, an open source
+ − 776 content management system written in Python.
+ − 777
+ − 778 In addition to my Python and Zope work, I am lead developer for the
+ − 779 GNU Mailman project, a mailing list management system written,
+ − 780 naturally, in Python. See the trend?
+ − 781
+ − 782 On the side I play bass with a number of Washington DC area bands and
+ − 783 also write poems about cows, milk, and fathers. Here's a sample, and
+ − 784 drop me an email if you live in the NYC to Charlotte region; I'll let
+ − 785 you know when the band's playing in your area. It'd be cool to meet
+ − 786 you, and talking about XEmacs would make my wife very happy by helping
+ − 787 to fend off the legions of groupies that seem to follow me everywhere.
+ − 788
+ − 789 Milk Me Daddy
+ − 790 (C) 1990 Warsaw
+ − 791 ===============
+ − 792 Oh daddy with your fingers pink
+ − 793 From whose udders do you drink?
+ − 794 Thy milk offends with putrid stink
+ − 795 I'll vomit now, lactose I think
+ − 796
+ − 797 If I could dream, I'd be a cow
+ − 798 Not horse, or mule, or barnyard sow
+ − 799 The cud I'd chew would drip and how!
+ − 800 So milk me daddy, milk me now!
+ − 801
+ − 802 My bovine nature knows no bounds
+ − 803 I'd naught awake at midnight sounds
+ − 804 Of teens approaching o'er the grounds
+ − 805 To tip with glee, then screech like clowns
+ − 806
+ − 807 And so I stare into this glass
+ − 808 Of sweaty juice, I gulp so fast
+ − 809 Each drop I lick, down to the last
+ − 810 The vertigo I know will pass
+ − 811
+ − 812 My mother smiles and pats my head
+ − 813 She's proud of me, so she has said
+ − 814 My pop just now gets out of bed
+ − 815 His eyes quite comatose and red
+ − 816
+ − 817 He'll empathize my milky fate
+ − 818 Whilest sopping gravy from his plate
+ − 819 And as the hour is getting late
+ − 820 His belly taut with all he ate
+ − 821
+ − 822 He isn't often quite so chatty
+ − 823 His arteries clogged with meat so fatty
+ − 824 With burps that launch soup, thick and splatty
+ − 825 Oh how I wish you'd milk me daddy\n\n\t")
+ − 826 (about-url-link 'baw nil "Visit Barry's home page")
+ − 827 (widget-insert "\n"))
+ − 828 (ben
+ − 829 (widget-insert
+ − 830 "\
+ − 831 Since September 1992, I've worked on XEmacs as a contractor for
+ − 832 various companies and more recently as an unpaid volunteer.
428
+ − 833
479
+ − 834 Alas, life has not been good to me recently. This former San
+ − 835 Francisco \"Mission Critter\" developed insidious hand and neck
+ − 836 problems after a brief stint working on a Java-based VRML toolkit for
+ − 837 the now defunct Dimension X, and I was forced to quit working. I was
+ − 838 exiled first to \"Stroller Valley\" and later all the way to Tucson,
+ − 839 Arizona, and for two years was almost completely disabled due to pain.
+ − 840 More recently I have fought my way back with loads and loads of
+ − 841 narcotic painkillers, and currently I'm an art student at the
+ − 842 University of Arizona.\n\n")
+ − 843 (widget-insert "Architecting XEmacs: ")
+ − 844 (about-url-link 'ben-xemacs nil "Find the miracles in store for XEmacs")
+ − 845 (widget-insert "\nBen's home page: ")
+ − 846 (about-url-link 'ben nil "Visit Ben's page")
+ − 847 (widget-insert "\n"))
+ − 848 (bw
+ − 849 (widget-insert "\
+ − 850 His interests include user interfaces, information management, CASE
+ − 851 tools, communications and enterprise integration.\n"))
+ − 852 (cgw
+ − 853 (widget-insert
+ − 854 "\
+ − 855 Sorry, no personal information available about me yet.\n"))
+ − 856 (chr
+ − 857 (widget-insert "\
+ − 858 Christian is a student at the Norwegian School of Economics and
+ − 859 Business Administration in Bergen, Norway. He used to work for an
+ − 860 internet startup called New Media Science, doing scripting and
+ − 861 violation of HTML DTD's. After graduation, spring 1999, he'll be
+ − 862 looking for a job involving lisp programming, French and Russian.\n"))
+ − 863 (craig
+ − 864 (widget-insert
+ − 865 "\
+ − 866 Sorry, no personal information available about me yet.\n"))
+ − 867 (cthomp
+ − 868 (widget-insert "\
487
+ − 869 Chuck is a senior system and network administrator for the Computer
+ − 870 Science department at the Unversity of Illinois. In one previous life
+ − 871 he spent every waking hour working on XEmacs. In another he dabbled
+ − 872 as a project manager for a streaming video startup (RIP). His current
+ − 873 reason for not having time to contribute to XEmacs is the Thompson
+ − 874 Twins.\n"))
479
+ − 875 (daiki
+ − 876 (about-url-link 'daiki nil "Visit Daiki's page"))
+ − 877 (dan
+ − 878 (widget-insert
+ − 879 "\
+ − 880 Sorry, no personal information available about me yet.\n"))
+ − 881 (darrylo
+ − 882 (widget-insert
+ − 883 "\
+ − 884 Perennial Emacs hacker since 1986 or so, when he first started on GNU
+ − 885 Emacs 17.something. Over the years, he's developed \"OEmacs\", the first
+ − 886 version of GNU Emacs 19 for MSDOS, and \"bigperl\", a 32-bit version of
+ − 887 Perl4 for MSDOS. In recent years, reality has intruded and he no longer
+ − 888 has much time for playing with cool programs. What little time he has
+ − 889 now goes to XEmacs hacking, where he's worked on speeding up dired under
+ − 890 MS Windows, and to feeding his two cats.\n"))
+ − 891 (devin
+ − 892 (widget-insert
+ − 893 "\
+ − 894 Sorry, no personal information available about me yet.\n"))
428
+ − 895 (dkindred
+ − 896 (widget-insert "\
+ − 897 Darrell is currently a doctoral student in computer science at
+ − 898 Carnegie Mellon University, but he's trying hard to kick that
+ − 899 habit.
+ − 900
+ − 901 See ")
479
+ − 902 (about-url-link 'dkindred nil "Visit Darrell's WWW page")
428
+ − 903 (widget-insert ".\n"))
479
+ − 904 (dmoore
428
+ − 905 (widget-insert "\
479
+ − 906 David is a student in the Computer Systems Laboratory at UCSD. When
+ − 907 he manages to have free time, he usually spends it on 200 mile bicycle
+ − 908 rides, learning German or showing people the best mail & news
+ − 909 environment he's found in 10 years. (That'd be XEmacs, Gnus and bbdb,
+ − 910 of course.) He can be found at `druidmuck.egbt.org 4201' at various
+ − 911 hours of the day.
+ − 912
+ − 913 He has a page at ")
+ − 914 (about-url-link 'dmoore nil "Visit David's home page")
428
+ − 915 (widget-insert ".\n"))
+ − 916 (dv
+ − 917 (widget-insert "\
452
+ − 918 I graduated at ENST (an engineering school in Paris) and have a Ph.D.
+ − 919 in computer science. I'm currently a teacher at EPITA (another
+ − 920 engineering school, still in Paris) and a researcher at LRDE (EPITA's
+ − 921 research and development laboratory). Our research topics include
+ − 922 generic programming and distributed virtual reality.
428
+ − 923
452
+ − 924 Apart from XEmacs, I'm also involved in other free software projects,
+ − 925 including Gnus, BBDB, and the GNU \"autotools\". I also wrote some
+ − 926 LaTeX packages (ugh :-).
+ − 927
+ − 928 All of this, actually, is only 60% true. Two days per week, I'm also a
+ − 929 semi-professional Jazz guitar player (and singer), which means that it
+ − 930 is not the way I earn my crust, but things may very well reverse in
+ − 931 the future ...\n\n")
+ − 932 (widget-insert "Visit Didier's home page: ")
479
+ − 933 (about-url-link 'dv nil "Visit Didier's home page")
+ − 934 (widget-insert "\n"))
+ − 935 (eb
+ − 936 (widget-insert
+ − 937 "\
+ − 938 Sorry, no personal information available about me yet.\n"))
+ − 939 (fabrice
+ − 940 (widget-insert
+ − 941 "\
+ − 942 I'm a computer science researcher and teacher in a French electrical
+ − 943 engineering institution called Supelec. My fields of interest are
+ − 944 symbolic artificial intelligence, theoretical computer science, functional
+ − 945 languages ... and TeX.
+ − 946
+ − 947 Lately, my hacking time has been devoted to porting the Web2C/teTeX
+ − 948 distribution of TeX for Unix to Win32, and I'm still maintaining it.
+ − 949 It is included in the TeX Live cdrom edited by Sebastian Rahtz.\n")
+ − 950 (widget-insert "Visit fpTeX home page: ")
+ − 951 (about-url-link 'fptex nil "Visit fpTeX home page")
+ − 952 (widget-insert "\nFabrice's home page: ")
+ − 953 (about-url-link 'fabrice nil "Visit Fabrice's page")
452
+ − 954 (widget-insert "\n"))
479
+ − 955 (golubev
+ − 956 (widget-insert
+ − 957 "\
+ − 958 Sorry, no personal information available about me yet.\n"))
+ − 959 (gunnar
+ − 960 (widget-insert
+ − 961 "\
+ − 962 Sorry, no personal information available about me yet.\n"))
+ − 963 (hbs
+ − 964 (widget-insert
+ − 965 "\
+ − 966 Sorry, no personal information available about me yet.\n"))
+ − 967 (hisashi
+ − 968 (widget-insert
+ − 969 "\
+ − 970 Sorry, no personal information available about me yet.\n"))
+ − 971 (hmuller
+ − 972 (widget-insert
+ − 973 "\
+ − 974 Sorry, no personal information available about me yet.\n"))
+ − 975 (hniksic
+ − 976 (widget-insert "\
481
+ − 977 Hrvoje thinks he works in the server-side web business. In reality,
+ − 978 he cranks out huge quantities of HTML, Tcl, and Java for the German
+ − 979 branch of ")
+ − 980 (about-url-link "http://www.arsdigita.com/"
+ − 981 "ArsDigita, Inc." "www.arsdigita.com")
+ − 982 ;; Avoid literal I18N characters in strings. *Displaying* a
+ − 983 ;; Latin 1 character should always be safe, though, with or
+ − 984 ;; without Mule.
+ − 985 (let ((muenchen (format "M%cnchen" (make-char 'latin-iso8859-1 252))))
+ − 986 (widget-insert (format "\
+ − 987 He joined the ranks of Gastarbeiters only
+ − 988 recently; he is trying to learn German and get attuned to %s
+ − 989 and Bav^H^H^HGermany.\n" muenchen)))
+ − 990
+ − 991 (widget-insert "\
479
+ − 992
481
+ − 993 Before ArsDigita, he worked as a programmer at ")
+ − 994 (about-url-link "http://www.iskon.hr/" "Iskon," "www.iskon.hr")
+ − 995 (widget-insert " a fast-growing
+ − 996 Croatian ISP. Even before that, he worked part-time for academic
+ − 997 institutions like ")
+ − 998 (about-url-link "http://www.srce.hr/" "SRCE" "www.srce.hr")
+ − 999 (widget-insert " and ")
+ − 1000 (about-url-link "http://www.carnet.hr/" "CARNet," "www.carnet.hr")
+ − 1001 (widget-insert " and tried to attend university.
+ − 1002
+ − 1003 He takes perverse pleasure in building and maintaining free software
+ − 1004 in his free time. Apart from XEmacs, his major contribution is ")
+ − 1005 (about-url-link 'wget "Wget," "Wget home page")
+ − 1006 (widget-insert "
+ − 1007 his very own creation, now jointly maintained by a happy crew.
+ − 1008
+ − 1009 He dreams of having a home page.\n"))
479
+ − 1010 (hobley
+ − 1011 (widget-insert "\
+ − 1012 I used to do real work, but now I am a Project Manager for one of the
+ − 1013 Telco's in Australia. In my spare time I like to get back to basics and
+ − 1014 muck around with things. As a result I started the NT port. Hopefully I
+ − 1015 will get to finish it sometime sooner rather than later. I do vaguely
+ − 1016 remember University where it seems like I had more spare time that I can
+ − 1017 believe now. Oh well, such is life.\n"))
+ − 1018 (jan
+ − 1019 (widget-insert "\
+ − 1020 Jan Vroonhof has been using XEmacs since he needed to write .tex files
+ − 1021 for his work as a physics and maths student at the Univerisity of Leiden.
+ − 1022 His XEmacs hacking started when XEmacs kept freezing up under a his
+ − 1023 window manager. He submitted a fix and has been hooked every since.
+ − 1024
+ − 1025 XEmacs has followed him first to Switzerland where he did a maths
+ − 1026 doctorate at the ETH in Zurich, working on a conjecture by Migdal on
+ − 1027 the behavior of vertex corrections in Electron-Phonon theory. Finally
+ − 1028 sharing a house with his loved one, he now lives in Oxford (UK)
+ − 1029 working on the Jeode Java Virtual Machine, which like XEmacs is
+ − 1030 portable, implements a language, includes a non-trivial bit of
+ − 1031 graphics and a garbage collector, but is multithreaded to boot!
+ − 1032 Unfortunately his XEmacs time is directly limited by the amount of
+ − 1033 traffic on the M40.\n"))
+ − 1034 (jareth
+ − 1035 (widget-insert "\
+ − 1036 Jareth Hein is a mountain boy who abandoned his home state of Colorado
+ − 1037 for the perpetual state of chaos known as Tokyo in a failed attempt to
+ − 1038 become a cel-animator, and a more successful one to become a
+ − 1039 computer-game programmer. As he happens to be bilingual (guess which
+ − 1040 two?) he's been doing quite a bit of MULE hacking. He's also getting
+ − 1041 his hands dirty in the graphics areas as well.\n"))
+ − 1042 (jason
+ − 1043 (widget-insert "\
+ − 1044 Jason resides in Northern New Mexico where he works as a Systems
+ − 1045 Scientist(tm) in the Los Alamos National Laboratory's Advanced
+ − 1046 Computing Group.
+ − 1047
+ − 1048 See: ")
+ − 1049 (about-url-link 'jason nil "Visit Jason's homepage")
+ − 1050 (widget-insert ".\n"))
+ − 1051 (jens
+ − 1052 (widget-insert "\
487
+ − 1053 I'm currently working for 1&1 Internet AG, a large Domain and Webspace
+ − 1054 Provider in Germany and Europe. I do mostly Java/XML/OO/Component
+ − 1055 stuff today. I'm interested EJB, Corba and other middleware or
+ − 1056 distributed Systems. Besides work, I occasionally hack on The Gimp
+ − 1057 and other gtk/gnome related projects. Maybe the advent of XEmacs/Gtk
+ − 1058 will get me back to spend some time again hacking on XEmacs in the
+ − 1059 near future.\n"))
479
+ − 1060 (jmiller
+ − 1061 (widget-insert "\
+ − 1062 Jeff grew up in Indiana and is a country boy at heart. He currently
+ − 1063 lives in, of all places, Millersville Maryland. He spends a lot of
+ − 1064 his free time tinkering with Linux and hacking on XEmacs and loves it
+ − 1065 when he finds new cool features in either. When he's not doing that,
+ − 1066 he enjoys downhill skiing, puzzles, and sci-fi. Jeff is also really
+ − 1067 interested in classical Roman history and enjoys making trips to
+ − 1068 Italy, where he was born, and seeing the sights")
+ − 1069 (widget-insert ".\n"))
+ − 1070 (jonathan
428
+ − 1071 (widget-insert "\
479
+ − 1072 I work for Symbian Ltd in London, England, looking after low-level
+ − 1073 kernel, peripheral and toolchain stuff for the EPOC OS.
+ − 1074
+ − 1075 I've been using XEmacs since 1994, but didn't start hacking on it
+ − 1076 until late 1997 when I started working at Symbian, a Windows-only
+ − 1077 company, and felt lost without my favourite editing environment.\n"))
+ − 1078 (juhp
+ − 1079 (widget-insert "\
+ − 1080 Jens was born in Copenhagen, grew up in Britain and is now living in
+ − 1081 Japan. He started using XEmacs 20 (instead of Emacs) as his
+ − 1082 work-environment in June 1997 while still an EU postdoc at RIMS, Kyoto
+ − 1083 University, and quickly got involved in XEmacs development. Recently
+ − 1084 he is getting into Haskell, a very nice pure functional programming
+ − 1085 language.
+ − 1086
+ − 1087 ")
+ − 1088 (about-url-link 'juhp nil "Visit Jens' homepage")
+ − 1089 (widget-insert "\n"))
+ − 1090 (jwz
+ − 1091 (widget-insert
+ − 1092 "\t"
+ − 1093 (about-with-face "\"So much to do, so little time.\"" 'italic)
+ − 1094 "\n
+ − 1095 Jamie Zawinski was primarily to blame for Lucid Emacs from its
+ − 1096 inception in 1991, to 1994 when Lucid Inc. finally died. After that,
+ − 1097 he was one of the initial employees of Netscape Communications, writing
+ − 1098 the first Unix version of Netscape Navigator, and designing and
+ − 1099 implementing the first version of the Netscape Mail and News readers.
+ − 1100 He then helped create and run ")
+ − 1101 (about-url-link "http://www.mozilla.org/"
+ − 1102 "mozilla.org"
+ − 1103 "Visit The Mozilla Organization")
+ − 1104 (widget-insert " for its first two years,
+ − 1105 until America Online bought Netscape Communications, at which point he
+ − 1106 gave up in disgust and dropped out of the computer industry entirely.
+ − 1107
+ − 1108 He now runs a ")
+ − 1109 (about-url-link "http://www.dnalounge.com/"
+ − 1110 "nightclub"
+ − 1111 "Visit The DNA Lounge")
+ − 1112 (widget-insert " in San Francisco, and occasionally writes
+ − 1113 screen savers.\n\n")
+ − 1114 (widget-insert "Visit jwz's ")
+ − 1115 (about-url-link 'jwz "home page" "Visit jwz's home page")
+ − 1116 (widget-insert ".\n"))
+ − 1117 (kazz
+ − 1118 (widget-insert "\
+ − 1119 Kazz is the XEmacs lead on BSD (especially FreeBSD).
+ − 1120 His main workspace is, probably, the latest stable version of
+ − 1121 FreeBSD and it makes him comfortable and not.
+ − 1122 His *mission* is to make XEmacs runs on FreeBSD without
+ − 1123 any problem.
+ − 1124
+ − 1125 In real life, he is working on a PDM product based on CORBA,
+ − 1126 and doing consultation, design and implemention.
+ − 1127 He loves to play soccer, yes football!
+ − 1128 See also:")
+ − 1129 (about-url-link 'kazz nil "Visit Kazz's home page")
+ − 1130 (widget-insert ".\n"))
+ − 1131 (kirill
+ − 1132 (widget-insert
+ − 1133 "\
+ − 1134 Sorry, no personal information available about me yet.\n"))
+ − 1135 (kyle
+ − 1136 (widget-insert "\
+ − 1137 See\n")
+ − 1138 (about-url-link 'kyle nil "Visit Kyle's Home page")
+ − 1139 (widget-insert ".\n"))
+ − 1140 (larsi
+ − 1141 (widget-insert "\
+ − 1142 Lars's day job is as the head of the IT department of a Norwegian
+ − 1143 Internet stock broker. He claims no responsibility for the Dot
+ − 1144 Com Bomb, but he snickers a lot.
+ − 1145
+ − 1146 See ")
+ − 1147 (about-url-link 'larsi nil "Visit the Larsissistic pages")
+ − 1148 (widget-insert ".\n"))
+ − 1149 (marcpa
+ − 1150 (widget-insert "\
+ − 1151 I work for Positron Industries Inc., Public Safety Division.
+ − 1152 I'm part of the team producing POWER 911, a 911 emergency response
+ − 1153 system written in Modula3:\n")
+ − 1154 (about-url-link 'marcpa nil "Visit POWER 911")
+ − 1155 (widget-insert "\
+ − 1156 \n\nPreviously, I worked at Softimage Inc., now a Microsoft company
+ − 1157 \(eeekkk!), as a UNIX system administrator. This is where I've been
+ − 1158 converted to NT.
+ − 1159
+ − 1160 In a previous life, I was a programmer/sysadmin at CRIM (Centre de
+ − 1161 Recherche Informatique de Montreal) for the speech recognition group.\n"))
+ − 1162 (martin
+ − 1163 (widget-insert "\
+ − 1164 Martin was the XEmacs guy at DevPro, a part of Sun Microsystems.
+ − 1165 Martin used to do XEmacs as a `hobby' while at IBM, and was crazy
+ − 1166 enough to try to make a living doing it at Sun.
+ − 1167
+ − 1168 Martin starting using Emacs originally not to edit files, but to get
+ − 1169 the benefit of shell mode. He actually used to run nothing but a shell
+ − 1170 buffer, and use `xterm -e vi' to edit files. But then he saw the
+ − 1171 light. He dreams of rewriting shell mode from scratch. Stderr should
+ − 1172 show up in red!!
+ − 1173
+ − 1174 Martin is no longer doing XEmacs for a living, and is Just Another
+ − 1175 Volunteer.\n"))
+ − 1176 (mcook
+ − 1177 (widget-insert
+ − 1178 "\
+ − 1179 Sorry, no personal information available about me yet.\n"))
+ − 1180 (mly
+ − 1181 (widget-insert "Cars are evil. Ride a bike.\n"))
+ − 1182 (morioka
+ − 1183 (widget-insert "\
+ − 1184 I am a doctoral student at School of Information Science of JAIST
+ − 1185 \(Japan Advanced Institute of Science and Technology, Hokuriku). I'm
+ − 1186 interested in Natural Language, Affordance and writing systems.\n"))
+ − 1187 (mta
+ − 1188 (widget-insert
+ − 1189 "\
+ − 1190 I am a software developer who worked for the University of Michigan
+ − 1191 for many years where I was one of the principal architects of the
+ − 1192 Michigan Terminal System. For the last several years I've been
+ − 1193 working for Arbortext, a publisher of XML publishing and content
+ − 1194 management software.\n"))
428
+ − 1195 (ograf
+ − 1196 (widget-insert "\
+ − 1197 I'm a student of computer sciences at the University of Koblenz. My
+ − 1198 major is computational linguistics (human language generation and
+ − 1199 analysis).
+ − 1200
+ − 1201 I make my living as a managing director of a small but fine company
+ − 1202 which I started two years ago with one of my friends. We provide
+ − 1203 business network solutions based on linux servers and various other
+ − 1204 networking products.
+ − 1205
+ − 1206 Most of my spare time I spent on the development of the XEmacs
+ − 1207 Drag'n'Drop API, a enhanced version of Tk called TkStep (better looks,
+ − 1208 also Drag'n'Drop, and more), and various other hacks: ISDN-tools,
+ − 1209 cd players, python, etc...
+ − 1210
+ − 1211 To see some of these have a look at ")
479
+ − 1212 (about-url-link 'ograf nil "one of my homepages")
+ − 1213 (widget-insert ".\n"))
+ − 1214 (olivier
+ − 1215 (widget-insert
+ − 1216 "\
+ − 1217 Sorry, no personal information available about me yet.\n"))
+ − 1218 (oscar
487
+ − 1219 (widget-insert "\
+ − 1220 Oscar heads the Computer Science department at CPE Lyon, a french
+ − 1221 engineering school in France. Besides his administrative tasks he
+ − 1222 teaches networking basics, Internet technologies (you know, all these
+ − 1223 xxML and hairy script languages !) and the Scheme language.\n"))
479
+ − 1224 (pelegri
+ − 1225 (widget-insert
+ − 1226 "\
629
+ − 1227 I did my PhD at UCB and a postdoc at CSL/PARC. I joined Sun in 1990,
479
+ − 1228 spent some time in DevPro (that is when I made my contribution to
+ − 1229 XEmacs) and joined JavaSoft in fall '95, where I've been the lead for
+ − 1230 several JSP-related specifications and JAX-RPC. I'm currently the Web
+ − 1231 Layer architect for J2EE.
+ − 1232
+ − 1233 I was born in Barcelona and I grew up mostly in Caracas; I have two kids
+ − 1234 and I speak only catalan to them; I can juggle some (career, family, and
+ − 1235 4 balls or 3 pins); and my english can be idiosyncratic!.\n"))
+ − 1236 (pez
+ − 1237 (widget-insert "\
+ − 1238 Peter currently serves as Senior Vice President, Product Development
+ − 1239 for CBS SportsLine. See ")
+ − 1240 (about-url-link 'pez nil "CBS SportsLine")
428
+ − 1241 (widget-insert ".\n"))
479
+ − 1242 (piper
+ − 1243 (widget-insert "\
+ − 1244 My home page is here:\n")
+ − 1245 (about-url-link 'piper nil "Visit andy's home page")
+ − 1246 (widget-insert "\n
+ − 1247 Andy has recently rejoined the XEmacs team to help port XEmacs to
+ − 1248 MS Windows operating systems.\n"))
+ − 1249 (pittman
+ − 1250 (widget-insert
+ − 1251 "\
+ − 1252 Sorry, no personal information available about me yet.\n"))
+ − 1253 (rickc
+ − 1254 (widget-insert "\
487
+ − 1255 The hacker formerly known as Rick Busdiecker is a developer and
+ − 1256 technical manager at Deutsche Bank in New York during daylight hours.
+ − 1257 In the evenings he maintains three children, and when he ought to be
+ − 1258 sleeping he builds XEmacs betas, and tinkers with various personal
+ − 1259 hacking projects.\n"))
479
+ − 1260 (rose
+ − 1261 (widget-insert
+ − 1262 "\
+ − 1263 Sorry, no personal information available about me yet.\n"))
+ − 1264 (rossini
+ − 1265 (widget-insert "\
+ − 1266 Current development lead for ESS (Emacs Speaks Statistics), a mode and
+ − 1267 inferior mode for statistical programming and data analysis for SAS,
+ − 1268 S, S-PLUS, R, XLispStat; configurable for nearly any other statistical
+ − 1269 language/package one might want. In spare time, chases his son around
+ − 1270 and acts as a Ph.D. (bio)statistician for money and amusement,
+ − 1271 primarily focusing on statistical computing, visualization, and the
+ − 1272 design and analysis of HIV vaccine trials. Current position: Research
+ − 1273 Assistant Professor of Biostatistics at the University of Washington
+ − 1274 and the Fred Hutchinson Cancer Research Center.
+ − 1275
+ − 1276 See ")
+ − 1277 (about-url-link 'rossini nil "Visit Anothony's home page")
+ − 1278 (widget-insert ".\n"))
+ − 1279 (slb
+ − 1280 (widget-insert "\
+ − 1281 Peaches Baur, 1986-1999.
+ − 1282 Rest in peace")
+ − 1283 (widget-insert ".\n"))
+ − 1284 (sperber
+ − 1285 (widget-insert "\
+ − 1286 When Mike isn't busy putting together patches for free software he has
+ − 1287 just installed or changing his hairstyle, he does research in modern
+ − 1288 programming languages and their implementation, and hopes that one day
+ − 1289 XEmacs will speak Scheme.\n"))
+ − 1290 (stig
428
+ − 1291 (widget-insert "\
479
+ − 1292 Peripatetic uninominal Emacs hacker. Stig sometimes operates out of a
+ − 1293 big white van set up for nomadic living and hacking. Stig is sort of
+ − 1294 a tool fetishist. He has a hate/love relationship with computers and
+ − 1295 he hacks on XEmacs because it's a good tool that makes computers
+ − 1296 somewhat less of a nuisance. Besides XEmacs, Stig especially likes
+ − 1297 his Leatherman, his Makita, and his lockpicks. Stig wants a MIG
+ − 1298 welder and air tools.
+ − 1299
+ − 1300 Stig likes to perch, hang from the ceiling, and climb on the walls.
+ − 1301 Stig has a cool van. Stig would like to be able to telecommute from,
+ − 1302 say, the north rim of the Grand Canyon or the midst of Baja.\n"))
+ − 1303 (stigb
+ − 1304 (widget-insert "\
+ − 1305 Currently studying computer science in Trondheim, Norway. Full time
+ − 1306 Linux user and proud of it. XEmacs hacker light.
+ − 1307
+ − 1308 See:\t")
+ − 1309 (about-url-link 'stigb nil "Visit Stig's home page"))
+ − 1310 (thiessel
+ − 1311 (widget-insert "\
+ − 1312 Worked at University of Kaiserslautern where he took part in the
+ − 1313 development and design of a CAD framework for analog integrated
+ − 1314 circuits with special emphasis on distributed software concepts. He
+ − 1315 has now joined HP as technical consultant.
+ − 1316
+ − 1317 All of the buildings,
+ − 1318 all of the cars
+ − 1319 were once just a dream
+ − 1320 in somebody's head.\n
+ − 1321 P. Gabriel\n"))
+ − 1322 (tomonori
+ − 1323 (widget-insert
+ − 1324 "\
+ − 1325 Sorry, no personal information available about me yet.\n"))
+ − 1326 (tuck
+ − 1327 (widget-insert
+ − 1328 "\
+ − 1329 Sorry, no personal information available about me yet.\n"))
+ − 1330 (turnbull
+ − 1331 (widget-insert "\
+ − 1332 Stephen lives with his Japanese wife and children in Tsukuba, Japan,
+ − 1333 where he is a professor of economics at the University of Tsukuba.\n"))
+ − 1334 (vin
+ − 1335 (widget-insert "\
+ − 1336 I own and operate my own consulting firm, EtherSoft. Shhh, don't
+ − 1337 tell anyone, but it's named after an Ultimate team I used to play
+ − 1338 with in Austin, Texas - the Ether Bunnies. I'm getting too old
+ − 1339 to play competitive Ultimate any more, so now I've gotten roped
+ − 1340 into serving on the board of directors of the Ultimate Players
+ − 1341 Association. See ")
+ − 1342 (about-url-link 'vin nil "Visit the UPA homepage")
+ − 1343 (widget-insert ".\n"))
+ − 1344 (vladimir
+ − 1345 (widget-insert "\
+ − 1346 Former technical lead for XEmacs at Sun. He is now writing a book on
+ − 1347 distributed Java and is working at Xerox PARC documenting AspectJ, a
+ − 1348 light-weight extension to Java that supports crosscutting concerns.
+ − 1349 See ")
+ − 1350 (about-url-link 'vladimir nil "Visit Vladimir's home page")
+ − 1351 (widget-insert ".\n"))
+ − 1352 (wmperry
+ − 1353 (widget-insert "\
487
+ − 1354 Happily living in Indiana telecommuting for a company based in Seattle
+ − 1355 \(who I now prefer not to name), wishing I was in Ireland instead.\n"))
479
+ − 1356 (yoshiki
+ − 1357 (widget-insert
+ − 1358 "\
+ − 1359 Sorry, no personal information available about me yet.\n"))
+ − 1360 (youngs
+ − 1361 (widget-insert "\
+ − 1362 I live in Brisbane, Australia with my wife, Michelle and our daughter,
+ − 1363 Kaitlyn. I've only been hacking XEmacs for a short time (approx 18
+ − 1364 mths), but I've been fooling around with computers since the early
+ − 1365 80's.
+ − 1366
+ − 1367 In the past, I've been a bank officer, car salesman, insurance agent,
+ − 1368 managed a computer firm and owned and operated my own business. I now
+ − 1369 divide my time between my family, planning my next business idea (a
+ − 1370 computer consulting firm that uses zero Microsoft products), looking
+ − 1371 after the XEmacs Packages and hacking my own XEmacs package, Eicq.
+ − 1372
+ − 1373 \tSee: ")
+ − 1374 (about-url-link 'youngs nil "Visit the Eicq homepage")
+ − 1375 (widget-insert ".\n"))
+ − 1376 ))
428
+ − 1377
479
+ − 1378 ;; Insert info about a maintainer's contribution to XEmacs. See also
+ − 1379 ;; `about-personal-info'.
+ − 1380 (defun about-hacker-contribution (entry)
+ − 1381 (ecase (car entry)
+ − 1382 ;; to sort the entries below, use M-x sort-regexp-fields RET
+ − 1383 ;; then this regexp: ([^(]*([^"]*"[^"]*"[^)]*))
+ − 1384 ;; then this regexp: (\([a-z]*\)
+ − 1385 (adrian
+ − 1386 (widget-insert
+ − 1387 "\
+ − 1388 Adrian has done invaluable work rewriting and maintaining the XEmacs
+ − 1389 web pages at www.xemacs.org. During his tenureship, he has
+ − 1390 established a consistent look and feel, placed the web pages under
+ − 1391 CVS, set up maintenance procedures, written scripts to handle
+ − 1392 automatic updating, validation and mirroring, and done innumerable
+ − 1393 other tasks. He has also helped with many other administrative tasks,
+ − 1394 such as the thankless work of dealing with the providers of resources
+ − 1395 to XEmacs at SourceForge and tux.org.\n"))
+ − 1396 (aj
+ − 1397 (widget-insert "\
+ − 1398 Former `Package Patch Tender', beta tester and GNU libc developer.\n"))
+ − 1399 (ajc
+ − 1400 (widget-insert "\
+ − 1401 Former XEmacs web site maintainer.\n"))
+ − 1402 (alastair
+ − 1403 (widget-insert
+ − 1404 "\
+ − 1405 Rewrote the selection code, adding many new features such as better
+ − 1406 support for arbitrary selection types (especially under MS Windows,
+ − 1407 where the full power of the clipboard system is available under
+ − 1408 XEmacs).\n"))
+ − 1409 (baw
+ − 1410 (widget-insert "\
+ − 1411 I'm the author of ")
+ − 1412 (about-url-link 'cc-mode "CC Mode" "Visit the CC Mode page")
+ − 1413 (widget-insert ", for C, C++, Objective-C and Java editing,
+ − 1414 Supercite for mail and news citing, and sundry other XEmacs packages
+ − 1415 such as ELP (the Emacs Lisp Profiler), Reporter, xrdb-mode, and
+ − 1416 winring. Even though I still live almost 100% in XEmacs these days,
+ − 1417 my Lisp hacking has fallen off in recent years as I became more
+ − 1418 involved in Python, and in fact, I currently maintain the Python
+ − 1419 editing mode. See also: ")
+ − 1420 (about-url-link "http://www.python.org/emacs" nil
+ − 1421 "Visit the python.org Emacs Goodies page")
+ − 1422 (widget-insert ".\n"))
+ − 1423 (ben
+ − 1424 (widget-insert
+ − 1425 "\
+ − 1426 I am the largest code contributor to XEmacs, and the architect of many
+ − 1427 of the features that distinguish XEmacs from GNU Emacs and other Emacs
+ − 1428 versions. My main contributions to XEmacs include rewriting large
+ − 1429 parts of the internals and the gory Xt/Xlib interfacing, adding the
+ − 1430 Mule \(international) support, improving the MS Windows support,
+ − 1431 adding many GUI features to XEmacs, architecting the
+ − 1432 device-abstraction and specifier code, writing most of the XEmacs
+ − 1433 Internals Manual and the XEmacs-specific parts of the XEmacs Lisp
+ − 1434 Reference Manual, synching a great deal of code with GNU Emacs, and
+ − 1435 being a general nuisance ... er, brainstormer for many of the new
+ − 1436 features of XEmacs.\n"))
+ − 1437 (bw
+ − 1438 (widget-insert "\
+ − 1439 Author of the Hyperbole everyday information management hypertext
+ − 1440 system and the OO-Browser multi-language code browser. He also
+ − 1441 designed the BeOpen InfoDock integrated development environment
+ − 1442 for software engineers. It runs atop XEmacs and is available from
+ − 1443 his firm, BeOpen, which offers distributions, custom development,
+ − 1444 support, and training packages for corporate users of XEmacs, GNU
+ − 1445 Emacs and InfoDock. See ")
+ − 1446 (about-url-link 'beopen nil "Visit BeOpen WWW page")
+ − 1447 (widget-insert ".\n"))
+ − 1448 (cgw
+ − 1449 (widget-insert
+ − 1450 "\
+ − 1451 Author of an earlier version of the MS Windows setup program for XEmacs.\n"))
+ − 1452 (chr
+ − 1453 (widget-insert "\
+ − 1454 Maintainer of the XEmacs FAQ and proud author of `zap-up-to-char'.\n"))
+ − 1455 (craig
+ − 1456 (widget-insert
+ − 1457 "\
+ − 1458 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1459 (cthomp
+ − 1460 (widget-insert
+ − 1461 "\
+ − 1462 Maintainer of XEmacs from mid-1994 through 1996. Author of the
487
+ − 1463 redisplay engine, the original toolbar and scrollbars and some of the
+ − 1464 device-abstraction, TTY and glyph code. Creator of the xemacs.org
+ − 1465 domain and comp.emacs.xemacs.\n"))
479
+ − 1466 (daiki
+ − 1467 (widget-insert
+ − 1468 "\
+ − 1469 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1470 (dan
+ − 1471 (widget-insert
+ − 1472 "\
+ − 1473 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1474 (darrylo
+ − 1475 (widget-insert
+ − 1476 "\
+ − 1477 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1478 (devin
+ − 1479 (widget-insert "\
+ − 1480 Part of the original (pre-19.0) Lucid Emacs development team.
+ − 1481 Matthieu wrote the initial Energize interface, designed the
+ − 1482 toolkit-independent Lucid Widget library, and fixed enough redisplay
+ − 1483 bugs to last a lifetime. The features in Lucid Emacs were largely
+ − 1484 inspired by Matthieu's initial prototype of an Energize interface
+ − 1485 using Epoch.\n"))
+ − 1486 (dkindred
+ − 1487 (widget-insert "\
+ − 1488 Darrell tends to come out of the woodwork a couple of weeks
+ − 1489 before a new release with a flurry of fixes for bugs that
+ − 1490 annoy him. He hopes he's spared you from a core dump or two.\n"))
+ − 1491 (dmoore
+ − 1492 (widget-insert "\
+ − 1493 David has contributed greatly to the quest to speed up XEmacs.\n"))
+ − 1494 (dv
+ − 1495 (widget-insert "\
+ − 1496 I joined the development of XEmacs in 1996, and have been one of the
+ − 1497 core maintainers since 1998. Although I'm mostly interested in the
+ − 1498 GUI, ergonomics, redisplay and autoconf issues, it's probably simpler
+ − 1499 to describe what I'm *not* involved in: I've never touched the Lisp
+ − 1500 implementation, and I probably never will...
428
+ − 1501
479
+ − 1502 I'm the author of the multicast support, I wrote and maintain some
+ − 1503 external Emacs Lisp packages (including mchat) and I'm also
+ − 1504 responsible for some of the core Lisp code (including the rectangle
+ − 1505 library which I rewrote for both XEmacs and GNU Emacs).\n"))
+ − 1506 (eb
+ − 1507 (widget-insert "\
+ − 1508 Also part of the original Lucid Emacs development team. Eric played a
+ − 1509 big part in the design of many aspects of the system, including the
+ − 1510 new command loop and keymaps, fixed numerous bugs, and has been a
+ − 1511 reliable beta tester ever since.\n"))
+ − 1512 (fabrice
+ − 1513 (widget-insert
+ − 1514 "\
+ − 1515 I have started to provide binary kits for the 21.2 series when there
+ − 1516 was no installer available. I contributed a few lines of core code
+ − 1517 occasionally to make things smoother with the native win32 port which
+ − 1518 I'm using all the day.
428
+ − 1519
479
+ − 1520 I also contributed elisp code long ago to make Gnus run under XEmacs.\n"))
+ − 1521 (golubev
+ − 1522 (widget-insert
+ − 1523 "\
+ − 1524 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1525 (gunnar
+ − 1526 (widget-insert
+ − 1527 "\
+ − 1528 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1529 (hbs
+ − 1530 (widget-insert "\
+ − 1531 Part of the original (pre-19.0) Lucid Emacs development team. Harlan
+ − 1532 designed and implemented many of the low level data structures which
+ − 1533 are original to the Lucid version of Emacs, including extents and hash
+ − 1534 tables.\n"))
+ − 1535 (hisashi
+ − 1536 (widget-insert
+ − 1537 "\
+ − 1538 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1539 (hmuller
+ − 1540 (widget-insert "\
+ − 1541 Author of the code used to connect XEmacs with ToolTalk, and of an
+ − 1542 early client of the external Emacs widget.\n"))
+ − 1543 (hniksic
+ − 1544 (widget-insert
+ − 1545 "\
481
+ − 1546 Hrvoje's contribution to XEmacs consists of many hours spent working
+ − 1547 on code and taking part in public discussions.
+ − 1548
+ − 1549 He wrote `savehist' and `htmlize' packages, the latter having a pretty
+ − 1550 large gathering of users. He worked to improve many parts of XEmacs
+ − 1551 Lisp code, including isearch (FSF synch and new features), cl, edmacro
+ − 1552 \(FSF synch and an almost complete rewrite), profile, gnuserv,
+ − 1553 hyper-apropos, etags, about, and custom.
+ − 1554
+ − 1555 He has worked on improving and optimizing the C core. He ported many
+ − 1556 FSF core features such as indirect buffers, tty-erase-char,
+ − 1557 save-current-buffer and friends, debug-ignored-errors, etc. He also
+ − 1558 wrote line numbering optimizations for large buffers, initial support
+ − 1559 for TTY frames, abbrev improvements, Lisp printer and reader
+ − 1560 improvements, support for extent modification functions, and lots of
+ − 1561 minor bugfixes, optimizations, and Muleifications.
+ − 1562
+ − 1563 He contributed to Lispref and Internals documentation, including a
+ − 1564 section on writing Mule-compliant C code. Maintains NEWS. He
+ − 1565 participated on xemacs-beta since 1996 and on the Patch Review Board
+ − 1566 since its inception in 1998.\n"))
479
+ − 1567 (hobley
+ − 1568 (widget-insert
+ − 1569 "\
+ − 1570 Creator of the earliest version of the MS Windows port of XEmacs.\n"))
+ − 1571 (jan
+ − 1572 (widget-insert "\
+ − 1573 Apart from hunting down redisplay bugs Jan has worked on such
+ − 1574 things as improvements to the package system, implementing lazy-shot,
+ − 1575 a short stint at tracking patches and currently acts as a guardian
+ − 1576 of the XEmacs custom subsystem and gnuserv.\n"))
+ − 1577 (jareth
+ − 1578 (widget-insert "\
+ − 1579 Owner of cvs.xemacs.org, the machine that holds the XEmacs CVS
+ − 1580 repository, and author of some of the graphics code in XEmacs.\n"))
428
+ − 1581 (jason
+ − 1582 (widget-insert "\
460
+ − 1583 Beta tester, manager of the various XEmacs mailing lists and binary
479
+ − 1584 kit manager. Also, originator and maintainer of the gnus.org domain.\n"))
+ − 1585 (jens
+ − 1586 (widget-insert "\
487
+ − 1587 Jens did the artwork for graphics added to XEmacs 20.2 and 19.15. He's
+ − 1588 also the author of \"XEmacs Mine\", a game similar to Minesweeper, but
+ − 1589 running in XEmacs\n"))
428
+ − 1590 (jmiller
+ − 1591 (widget-insert "\
479
+ − 1592 Beta tester and last hacker of calendar.\n"))
+ − 1593 (jonathan
+ − 1594 (widget-insert "\
+ − 1595 I started the native port of XEmacs to MS Windows. Author of the
+ − 1596 Windows frame, redisplay, face and event loop support.\n"))
+ − 1597 (juhp
+ − 1598 (widget-insert "\
+ − 1599 Author of \"find-func.el\", improvements to \"help.el\" and a good
+ − 1600 number of bug fixes during June 1997 to December 1998.\n"))
+ − 1601 (jwz
+ − 1602 (widget-insert
+ − 1603 "\
+ − 1604 Creator and maintainer of Lucid Emacs (the predecessor of XEmacs),
+ − 1605 from 1991 through mid-1994.\n"))
+ − 1606 (kazz
428
+ − 1607 (widget-insert "\
479
+ − 1608 IENAGA Kazuyuki is the XEmacs technical lead on BSD, particularly
+ − 1609 FreeBSD.\n"))
+ − 1610 (kirill
+ − 1611 (widget-insert
+ − 1612 "\
+ − 1613 Abstracted the subprocess code and wrote much of the MS Windows
+ − 1614 support in XEmacs, including the subprocess interface, dialog boxes,
+ − 1615 printing support, and much of the event loop.\n"))
+ − 1616 (kyle
+ − 1617 (widget-insert "\
+ − 1618 Author of VM, a mail-reading package that is included in the standard
+ − 1619 XEmacs distribution, and contributor of many improvements and bug
+ − 1620 fixes. Unlike RMAIL and MH-E, VM uses the standard UNIX mailbox
+ − 1621 format for its folders; thus, you can use VM concurrently with other
+ − 1622 UNIX mail readers such as Berkeley Mail and ELM.
428
+ − 1623
479
+ − 1624 Also rewrote the object allocation system in XEmacs to support full
+ − 1625 32-bit pointers and 31-bit integers.\n"))
+ − 1626 (larsi
+ − 1627 (widget-insert "\
+ − 1628 Author of Gnus the Usenet news and Mail reading package in the
+ − 1629 standard XEmacs distribution, and contributor of various enhancements
+ − 1630 and portability fixes.\n"))
+ − 1631 (marcpa
+ − 1632 (widget-insert
+ − 1633 "\
+ − 1634 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1635 (martin
+ − 1636 (widget-insert
+ − 1637 "\
+ − 1638 Beta release manager and author of many stability fixes and speed
+ − 1639 improvements in XEmacs.\n"))
+ − 1640 (mcook
+ − 1641 (widget-insert "\
+ − 1642 Author of the \"shy groups\" and minimal matching regular expression
+ − 1643 extensions.\n"))
+ − 1644 (mly
+ − 1645 (widget-insert "\
+ − 1646 Early code contributor to Lucid Emacs. Synched up Lucid Emacs with
+ − 1647 the first actual release of GNU Emacs 19, and architected and wrote
+ − 1648 the first version of XEmacs's object allocation system.\n"))
+ − 1649 (morioka
+ − 1650 (widget-insert "\
+ − 1651 I am the author of tm-view (general MIME Viewer for GNU Emacs) and
+ − 1652 major author and maintainer of tm (Tools for MIME; general MIME
+ − 1653 package for GNU Emacs). In addition, I am working to unify MULE API
+ − 1654 for Emacs and XEmacs. In XEmacs, I have ported many mule features.\n"))
+ − 1655 (mta
+ − 1656 (widget-insert
+ − 1657 "\
+ − 1658 Contributed minor improvements to the Windows support, especially
+ − 1659 related to subprocess communication and portable dumping as well as
+ − 1660 a bit of general bug fixing.\n"))
+ − 1661 (ograf
+ − 1662 (widget-insert "\
+ − 1663 Author of the XEmacs Drag'n'Drop API.\n"))
+ − 1664 (olivier
+ − 1665 (widget-insert
+ − 1666 "\
+ − 1667 Author of the portable dumper.\n"))
+ − 1668 (oscar
487
+ − 1669 (widget-insert "\
+ − 1670 Oscar's major contributions to XEmacs are the internal LDAP support
+ − 1671 and the EUDC package, an interface to query various directory services
+ − 1672 in a uniform manner (when composing mail for instance).\n"))
479
+ − 1673 (pelegri
+ − 1674 (widget-insert "\
+ − 1675 Author of EOS, a package included in the standard XEmacs distribution
+ − 1676 that integrates XEmacs with the SPARCworks development environment
+ − 1677 from Sun. Past lead for XEmacs at Sun; advocated the validity of
+ − 1678 using Epoch, and later Lemacs, at Sun through several early
+ − 1679 prototypes.\n"))
+ − 1680 (pez
+ − 1681 (widget-insert "\
+ − 1682 Author of SQL Mode, edit-toolbar, mailtool-mode, and various other
+ − 1683 small packages with varying degrees of usefulness.\n"))
+ − 1684 (piper
+ − 1685 (widget-insert "\
+ − 1686 Author of the Cygwin port of XEmacs including unexec, the widget,
+ − 1687 gutter and buffer-tab support, glyphs under MS-Windows, toolbars under
+ − 1688 MS-Windows, the original \"fake\" XEmacs toolbar, outl-mouse for mouse
+ − 1689 gesture based outlining, and the original CDE drag-n-drop
+ − 1690 support.\n"))
+ − 1691 (pittman
+ − 1692 (widget-insert
+ − 1693 "\
+ − 1694 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1695 (rickc
438
+ − 1696 (widget-insert "\
479
+ − 1697 Maintainer of ILISP.\n"))
+ − 1698 (rose
+ − 1699 (widget-insert "\
+ − 1700 Author of many extensions to the `extents' code, including the initial
+ − 1701 implementation of `duplicable' properties.\n"))
+ − 1702 (rossini
+ − 1703 (widget-insert "\
+ − 1704 Author of the first XEmacs FAQ;
+ − 1705 Development lead on Emacs Speaks Statistics;
+ − 1706 Assisted Jareth Hein with setting up the JitterBug tracking system.\n"))
+ − 1707 (slb
+ − 1708 (widget-insert
+ − 1709 "\
+ − 1710 Maintainer of XEmacs from 1996 through 1998. Author of the package
+ − 1711 system.\n"))
+ − 1712 (sperber
+ − 1713 (widget-insert "\
+ − 1714 Mike ported EFS to XEmacs 20 and integrated EFS into XEmacs. He's
+ − 1715 also responsible for the ports of facemenu.el and enriched.el, the
+ − 1716 code to handle path-frobbing at startup for the XEmacs core and the
+ − 1717 package system, the init file migration from .emacs to
+ − 1718 .xemacs/init.el, and the CVS Great Trunk Move.\n"))
+ − 1719 (stig
+ − 1720 (widget-insert "\
+ − 1721 Implemented the faster stay-up Lucid menus and hyper-apropos.
+ − 1722 Contributor of many dispersed improvements in the core Lisp code, and
+ − 1723 back-seat contributor for several of its major packages.\n"))
+ − 1724 (stigb
+ − 1725 (widget-insert "\
+ − 1726 Maintainer of the RPM package.\n"))
+ − 1727 (thiessel
+ − 1728 (widget-insert "\
+ − 1729 Does beta testing and helps take care of the XEmacs web site.\n"))
+ − 1730 (tomonori
+ − 1731 (widget-insert
+ − 1732 "\
+ − 1733 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1734 (tuck
+ − 1735 (widget-insert
+ − 1736 "\
+ − 1737 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1738 (turnbull
+ − 1739 (widget-insert
+ − 1740 "\
+ − 1741 Responsible for getting the current release of XEmacs out the
+ − 1742 door.\n"))
+ − 1743 (vin
+ − 1744 (widget-insert "\
+ − 1745 Vin helps maintain the older, more mature (read: moldy) versions of
+ − 1746 XEmacs. Vin maintains the XEmacs patch pages in order to bring a more
+ − 1747 stable XEmacs. (Actually, he does it 'cause it's fun and he's been
+ − 1748 using emacs for a long, long time.) Vin also contributed the detached
+ − 1749 minibuffer code as well as a few minor enhancements to the menubar
+ − 1750 options.\n"))
+ − 1751 (vladimir
+ − 1752 (widget-insert "\
+ − 1753 Former technical lead for XEmacs at Sun.\n"))
+ − 1754 (wmperry
+ − 1755 (widget-insert "\
+ − 1756 Author of the GTK support in XEmacs, Emacs-w3 (the builtin web browser
+ − 1757 that comes with XEmacs), and various additions to the C code (e.g. the
+ − 1758 database support, the PNG support, some of the GIF/JPEG support, the
+ − 1759 strikethru face attribute support).\n"))
+ − 1760 (yoshiki
+ − 1761 (widget-insert
+ − 1762 "\
+ − 1763 Sorry, no information about my XEmacs contributions yet.\n"))
+ − 1764 (youngs
+ − 1765 (widget-insert "\
+ − 1766 Maintainer and release manager of the packages.\n"))
+ − 1767 ))
428
+ − 1768
+ − 1769 ;; Setup the buffer for a maintainer.
+ − 1770 (defun about-maintainer (widget &optional event)
+ − 1771 (let* ((entry (assq (widget-value widget) xemacs-hackers))
+ − 1772 (who (car entry))
+ − 1773 (name (cadr entry))
+ − 1774 (address (caddr entry))
+ − 1775 (bufname (format "*About %s*" name)))
+ − 1776 (unless (about-get-buffer bufname)
+ − 1777 ;; Display the glyph and name
+ − 1778 (widget-insert "\n")
+ − 1779 (widget-create 'default :format "%t"
+ − 1780 :tag-glyph (about-maintainer-glyph who))
+ − 1781 (widget-insert
479
+ − 1782 "\n\n" (about-with-face (format "%s" name) 'bold)
+ − 1783 " <")
+ − 1784 (about-mailto-link address)
+ − 1785 (widget-insert ">\n\n")
428
+ − 1786 ;; Display the actual info
479
+ − 1787 (about-personal-info entry)
+ − 1788 (widget-insert "\n")
+ − 1789 (widget-insert
+ − 1790 (about-with-face "Contributions to XEmacs:\n\n" 'about-headline-face))
+ − 1791 (about-hacker-contribution entry)
428
+ − 1792 (widget-insert "\n")
+ − 1793 (about-finish-buffer 'kill)
+ − 1794 (forward-line 2))))
+ − 1795
+ − 1796 (defsubst about-tabs (str)
+ − 1797 (let ((x (length str)))
+ − 1798 (cond ((>= x 24) " ")
+ − 1799 ((>= x 16) "\t")
+ − 1800 ((>= x 8) "\t\t")
+ − 1801 (t "\t\t\t"))))
+ − 1802
479
+ − 1803 (defun about-show-linked-info (who)
428
+ − 1804 (let* ((entry (assq who xemacs-hackers))
+ − 1805 (name (cadr entry))
+ − 1806 (address (caddr entry)))
+ − 1807 (widget-create 'link :help-echo (concat "Find out more about " name)
+ − 1808 :action 'about-maintainer
+ − 1809 :button-prefix ""
+ − 1810 :button-suffix ""
+ − 1811 :tag name
+ − 1812 :value who)
+ − 1813 (widget-insert (about-tabs name)
479
+ − 1814 "<")
+ − 1815 (about-mailto-link address)
+ − 1816 (widget-insert ">\n")
+ − 1817 (about-hacker-contribution entry)
+ − 1818 (widget-insert "\n")))
428
+ − 1819
+ − 1820 (defun about-hackers (&rest ignore)
+ − 1821 (unless (about-get-buffer "*About Contributors*")
479
+ − 1822 (let ((title "A Legion of Contributors to XEmacs"))
428
+ − 1823 (widget-insert
+ − 1824 (about-center title)
+ − 1825 (about-with-face title 'bold)))
+ − 1826 (widget-insert
+ − 1827 "\n
+ − 1828 Like most free software, XEmacs is a collaborative effort. These are
+ − 1829 some of the contributors. We have no doubt forgotten someone; we
479
+ − 1830 apologize! You can see some of our faces under the links.\n\n"
+ − 1831 (about-with-face "Primary maintainers for this release:"
+ − 1832 'about-headline-face)
+ − 1833 "\n\n")
+ − 1834 (mapc 'about-show-linked-info about-current-release-maintainers)
+ − 1835 (widget-insert
+ − 1836 "\n"
+ − 1837 (about-with-face "Other notable current hackers:"
+ − 1838 'about-headline-face)
+ − 1839 "\n\n")
+ − 1840 (mapc 'about-show-linked-info about-other-current-hackers)
+ − 1841 (widget-insert
+ − 1842 "\n"
+ − 1843 (about-with-face "Other notable once and future hackers:"
+ − 1844 'about-headline-face)
+ − 1845 "\n\n")
+ − 1846 (mapc 'about-show-linked-info about-once-and-future-hackers)
428
+ − 1847 (flet ((print-short (name addr &optional shortinfo)
479
+ − 1848 (widget-insert (concat (about-with-face name 'italic)
+ − 1849 (about-tabs name)
+ − 1850 "<"))
+ − 1851 (about-mailto-link addr)
+ − 1852 (widget-insert
+ − 1853 (concat ">\n"
+ − 1854 (if shortinfo (concat shortinfo "\n") "")))))
428
+ − 1855 (widget-insert
+ − 1856 "\n\
+ − 1857 In addition to those just mentioned, the following people have spent a
+ − 1858 great deal of effort providing feedback, testing beta versions of
+ − 1859 XEmacs, providing patches to the source code, or doing all of the
479
+ − 1860 above. We couldn't have done it without them.\n\n")
+ − 1861 (print-short "Nagi M. Aboulenein" "aboulene@ponder.csci.unt.edu")
+ − 1862 (print-short "Per Abrahamsen" "abraham@dina.kvl.dk")
+ − 1863 (print-short "Gary Adams" "gra@zeppo.East.Sun.COM")
+ − 1864 (print-short "Gennady Agranov" "agranov@csa.CS.Technion.Ac.IL")
+ − 1865 (print-short "Mark Allender" "allender@vnet.IBM.COM")
+ − 1866 (print-short "Stephen R. Anderson" "sra@bloch.ling.yale.edu")
+ − 1867 (print-short "Butch Anton" "butch@zaphod.uchicago.edu")
+ − 1868 (print-short "Fred Appelman" "Fred.Appelman@cv.ruu.nl")
+ − 1869 (print-short "Erik \"The Pope\" Arneson" "lazarus@mind.net")
+ − 1870 (print-short "Tor Arntsen" "tor@spacetec.no")
+ − 1871 (print-short "Marc Aurel" "4-tea-2@bong.saar.de")
+ − 1872 (print-short "Larry Auton" "lda@control.att.com")
+ − 1873 (print-short "Larry Ayers" "layers@marktwain.net")
+ − 1874 (print-short "Oswald P. Backus IV" "backus@altagroup.com")
+ − 1875 (print-short "Mike Battaglia" "mbattagl@dsccc.com")
+ − 1876 (print-short "Neal Becker" "neal@ctd.comsat.com")
+ − 1877 (print-short "Paul Bibilo" "peb@delcam.com")
+ − 1878 (print-short "Leonard Blanks" "ltb@haruspex.demon.co.uk")
+ − 1879 (print-short "Jan Borchers" "job@tk.uni-linz.ac.at")
+ − 1880 (print-short "Mark Borges" "mdb@cdc.noaa.gov")
+ − 1881 (print-short "David P. Boswell" "daveb@tau.space.thiokol.com")
+ − 1882 (print-short "Tim Bradshaw" "tfb@edinburgh.ac.uk")
+ − 1883 (print-short "Rick Braumoeller" "rickb@mti.sgi.com")
+ − 1884 (print-short "Matthew J. Brown" "mjb@doc.ic.ac.uk")
+ − 1885 (print-short "Alastair Burt" "burt@dfki.uni-kl.de")
+ − 1886 (print-short "David Bush" "david.bush@adn.alcatel.com")
+ − 1887 (print-short "Richard Caley" "rjc@cstr.edinburgh.ac.uk")
+ − 1888 (print-short "Stephen Carney" "carney@gvc.dec.com")
+ − 1889 (print-short "Lorenzo M. Catucci" "lorenzo@argon.roma2.infn.it")
+ − 1890 (print-short "Philippe Charton" "charton@lmd.ens.fr")
+ − 1891 (print-short "Peter Cheng" "peter.cheng@sun.com")
+ − 1892 (print-short "Jin S. Choi" "jin@atype.com")
+ − 1893 (print-short "Tomasz J. Cholewo" "tjchol01@mecca.spd.louisville.edu")
+ − 1894 (print-short "Serenella Ciongoli" "czs00@ladybug.oes.amdahl.com")
+ − 1895 (print-short "Glynn Clements" "glynn@sensei.co.uk")
+ − 1896 (print-short "Richard Cognot" "cognot@ensg.u-nancy.fr")
+ − 1897 (print-short "Andy Cohen" "cohen@andy.bu.edu")
+ − 1898 (print-short "Richard Coleman" "coleman@math.gatech.edu")
+ − 1899 (print-short "Mauro Condarelli" "MC5686@mclink.it")
+ − 1900 (print-short "Nick J. Crabtree" "nickc@scopic.com")
+ − 1901 (print-short "Christopher Davis" "ckd@kei.com")
+ − 1902 (print-short "Soren Dayton" "csdayton@cs.uchicago.edu")
+ − 1903 (print-short "Chris Dean" "ctdean@cogit.com")
690
+ − 1904 (print-short "Michael Diers" "mdiers@elego.de")
479
+ − 1905 (print-short "William G. Dubuque" "wgd@martigny.ai.mit.edu")
+ − 1906 (print-short "Steve Dunham" "dunham@dunham.tcimet.net")
+ − 1907 (print-short "Samuel J. Eaton" "samuele@cogs.susx.ac.uk")
+ − 1908 (print-short "Carl Edman" "cedman@Princeton.EDU")
+ − 1909 (print-short "Dave Edmondson" "davided@sco.com")
+ − 1910 (print-short "Jonathan Edwards" "edwards@intranet.com")
+ − 1911 (print-short "Eric Eide" "eeide@asylum.cs.utah.edu")
+ − 1912 (print-short "EKR" "ekr@terisa.com")
+ − 1913 (print-short "David Fletcher" "frodo@tsunami.com")
+ − 1914 (print-short "Paul Flinders" "ptf@delcam.co.uk")
+ − 1915 (print-short "Jered J Floyd" "jered@mit.edu")
+ − 1916 (print-short "Gary D. Foster" "Gary.Foster@Corp.Sun.COM")
+ − 1917 (print-short "Jerry Frain" "jerry@sneffels.tivoli.com")
+ − 1918 (print-short "Holger Franz" "hfranz@physik.rwth-aachen.de")
+ − 1919 (print-short "Benjamin Fried" "bf@morgan.com")
+ − 1920 (print-short "Barry Friedman" "friedman@nortel.ca")
+ − 1921 (print-short "Noah Friedman" "friedman@splode.com")
+ − 1922 (print-short "Kazuyoshi Furutaka" "furutaka@Flux.tokai.jaeri.go.jp")
+ − 1923 (print-short "Lew Gaiter III" "lew@StarFire.com")
+ − 1924 (print-short "Itay Gat" "itay@cs.huji.ac.il")
+ − 1925 (print-short "Tim Geisler" "Tim.Geisler@informatik.uni-muenchen.de")
+ − 1926 (print-short "Dave Gillespie" "daveg@synaptics.com")
+ − 1927 (print-short "Christian F. Goetze" "cg@bigbook.com")
+ − 1928 (print-short "Yusuf Goolamabbas" "yusufg@iss.nus.sg")
+ − 1929 (print-short "Wolfgang Grieskamp" "wg@cs.tu-berlin.de")
+ − 1930 (print-short "John Griffith" "griffith@sfs.nphil.uni-tuebingen.de")
+ − 1931 (print-short "James Grinter" "jrg@demon.net")
+ − 1932 (print-short "Ben Gross" "bgross@uiuc.edu")
+ − 1933 (print-short "Dirk Grunwald" "grunwald@foobar.cs.Colorado.EDU")
+ − 1934 (print-short "Michael Guenther" "michaelg@igor.stuttgart.netsurf.de")
+ − 1935 (print-short "Dipankar Gupta" "dg@hplb.hpl.hp.com")
+ − 1936 (print-short "Markus Gutschke" "gutschk@GOEDEL.UNI-MUENSTER.DE")
+ − 1937 (print-short "Kai Haberzettl" "khaberz@synnet.de")
+ − 1938 (print-short "Adam Hammer" "hammer@cs.purdue.edu")
+ − 1939 (print-short "Magnus Hammerin" "magnush@epact.se")
+ − 1940 (print-short "ChangGil Han" "cghan@phys401.phys.pusan.ac.kr")
+ − 1941 (print-short "Derek Harding" "dharding@lssec.bt.co.uk")
+ − 1942 (print-short "Michael Harnois" "mharnois@sbt.net")
+ − 1943 (print-short "John Haxby" "J.Haxby@isode.com")
+ − 1944 (print-short "Karl M. Hegbloom" "karlheg@inetarena.com")
+ − 1945 (print-short "Benedikt Heinen" "beh@icemark.thenet.ch")
+ − 1946 (print-short "Stephan Herrmann" "sh@first.gmd.de")
+ − 1947 (print-short "August Hill" "awhill@inlink.com")
+ − 1948 (print-short "Mike Hill" "mikehill@hgeng.com")
+ − 1949 (print-short "Charles Hines" "chuck_hines@VNET.IBM.COM")
+ − 1950 (print-short "Shane Holder" "holder@rsn.hp.com")
+ − 1951 (print-short "Chris Holt" "xris@migraine.stanford.edu")
+ − 1952 (print-short "Tetsuya HOYANO" "hoyano@ari.bekkoame.or.jp")
+ − 1953 (print-short "David Hughes" "djh@harston.cv.com")
+ − 1954 (print-short "Tudor Hulubei" "tudor@cs.unh.edu")
+ − 1955 (print-short "Tatsuya Ichikawa" "ichikawa@hv.epson.co.jp")
+ − 1956 (print-short "Andrew Innes" "andrewi@harlequin.co.uk")
+ − 1957 (print-short "Markku Jarvinen" "Markku.Jarvinen@simpukka.funet.fi")
+ − 1958 (print-short "Robin Jeffries" "robin.jeffries@sun.com")
+ − 1959 (print-short "Philip Johnson" "johnson@uhics.ics.Hawaii.Edu")
+ − 1960 (print-short "J. Kean Johnston" "jkj@paradigm-sa.com")
+ − 1961 (print-short "John W. Jones" "jj@asu.edu")
+ − 1962 (print-short "Andreas Kaempf" "andreas@sccon.com")
+ − 1963 (print-short "Yoshiaki Kasahara" "kasahara@nc.kyushu-u.ac.jp")
+ − 1964 (print-short "Amir Katz" "amir@ndsoft.com")
+ − 1965 (print-short "Doug Keller" "dkeller@vnet.ibm.com")
+ − 1966 (print-short "Hunter Kelly" "retnuh@corona")
+ − 1967 (print-short "Gregor Kennedy" "gregork@dadd.ti.com")
+ − 1968 (print-short "Michael Kifer" "kifer@cs.sunysb.edu")
+ − 1969 (print-short "Yasuhiko Kiuchi" "kiuchi@dsp.ksp.fujixerox.co.jp")
+ − 1970 (print-short "Greg Klanderman" "greg.klanderman@alum.mit.edu")
+ − 1971 (print-short "Valdis Kletnieks" "Valdis.Kletnieks@vt.edu")
+ − 1972 (print-short "Norbert Koch" "n.koch@delta-ii.de")
+ − 1973 (print-short "Rob Kooper" "kooper@cc.gatech.edu")
+ − 1974 (print-short "Peter Skov Knudsen" "knu@dde.dk")
+ − 1975 (print-short "Jens Krinke" "krinke@ips.cs.tu-bs.de")
+ − 1976 (print-short "Maximilien Lincourt" "max@toonboom.com")
+ − 1977 (print-short "Mats Larsson" "Mats.Larsson@uab.ericsson.se")
+ − 1978 (print-short "Simon Leinen" "simon@instrumatic.ch")
+ − 1979 (print-short "Carsten Leonhardt" "leo@arioch.oche.de")
+ − 1980 (print-short "James LewisMoss" "moss@cs.sc.edu")
+ − 1981 (print-short "Mats Lidell" "mats.lidell@contactor.se")
+ − 1982 (print-short "Matt Liggett" "mliggett@seven.ucs.indiana.edu")
+ − 1983 (print-short "Christian Limpach" "Christian.Limpach@nice.ch")
+ − 1984 (print-short "Maximilien Lincourt" "max@toonboom.com")
+ − 1985 (print-short "Markus Linnala" "maage@b14b.tupsu.ton.tut.fi")
+ − 1986 (print-short "Robert Lipe" "robertl@arnet.com")
+ − 1987 (print-short "Derrell Lipman" "derrell@vis-av.com")
+ − 1988 (print-short "Damon Lipparelli" "lipp@aa.net")
+ − 1989 (print-short "Hamish Macdonald" "hamish@bnr.ca")
+ − 1990 (print-short "Ian MacKinnon" "imackinnon@telia.co.uk")
+ − 1991 (print-short "Patrick MacRoberts" "macro@hpcobr30.cup.hp.com")
+ − 1992 (print-short "Tonny Madsen" "Tonny.Madsen@netman.dk")
+ − 1993 (print-short "Ketil Z Malde" "ketil@ii.uib.no")
+ − 1994 (print-short "Steve March" "smarch@quaver.urbana.mcd.mot.com")
+ − 1995 (print-short "Ricardo Marek" "ricky@ornet.co.il")
+ − 1996 (print-short "Pekka Marjola" "pema@iki.fi")
+ − 1997 (print-short "Simon Marshall" "simon@gnu.ai.mit.edu")
+ − 1998 (print-short "Dave Mason" "dmason@plg.uwaterloo.ca")
+ − 1999 (print-short "Jaye Mathisen" "mrcpu@cdsnet.net")
+ − 2000 (print-short "Jason McLaren" "mclaren@math.mcgill.ca")
+ − 2001 (print-short "Michael McNamara" "mac@silicon-sorcery.com")
+ − 2002 (print-short "Michael Meissner" "meissner@osf.org")
+ − 2003 (print-short "David M. Meyer" "meyer@ns.uoregon.edu")
+ − 2004 (print-short "John Mignault" "jbm@panix.com")
+ − 2005 (print-short "Brad Miller" "bmiller@cs.umn.edu")
+ − 2006 (print-short "John Morey" "jmorey@crl.com")
+ − 2007 (print-short "Rob Mori" "rob.mori@sun.com")
+ − 2008 (print-short "Heiko Muenkel" "muenkel@tnt.uni-hannover.de")
+ − 2009 (print-short "Arup Mukherjee" "arup+@cs.cmu.edu")
+ − 2010 (print-short "Colas Nahaboo" "Colas.Nahaboo@sophia.inria.fr")
+ − 2011 (print-short "Lynn D. Newton" "lynn@ives.phx.mcd.mot.com")
+ − 2012 (print-short "Casey Nielson" "knielson@joule.elee.calpoly.edu")
+ − 2013 (print-short "Georg Nikodym" "Georg.Nikodym@canada.sun.com")
+ − 2014 (print-short "Andy Norman" "ange@hplb.hpl.hp.com")
+ − 2015 (print-short "Joe Nuspl" "nuspl@sequent.com")
+ − 2016 (print-short "Kim Nyberg" "kny@tekla.fi")
+ − 2017 (print-short "Kevin Oberman" "oberman@es.net")
+ − 2018 (print-short "David Ofelt" "ofelt@getalife.Stanford.EDU")
+ − 2019 (print-short "Alexandre Oliva" "oliva@dcc.unicamp.br")
+ − 2020 (print-short "Tore Olsen" "toreo@colargol.idb.hist.no")
+ − 2021 (print-short "Greg Onufer" "Greg.Onufer@eng.sun.com")
+ − 2022 (print-short "Achim Oppelt" "aoppelt@theorie3.physik.uni-erlangen.de")
+ − 2023 (print-short "Rebecca Ore" "rebecca.ore@op.net")
+ − 2024 (print-short "Sudeep Kumar Palat" "palat@idt.unit.no")
+ − 2025 (print-short "Joel Peterson" "tarzan@aosi.com")
+ − 2026 (print-short "Thomas A. Peterson" "tap@src.honeywell.com")
+ − 2027 (print-short "Tibor Polgar" "tibor@alteon.com")
+ − 2028 (print-short "Frederic Poncin" "fp@info.ucl.ac.be")
+ − 2029 (print-short "E. Rehmi Post" "rehmi@asylum.sf.ca.us")
+ − 2030 (print-short "Martin Pottendorfer" "Martin.Pottendorfer@aut.alcatel.at")
+ − 2031 (print-short "Colin Rafferty" "colin@xemacs.org")
+ − 2032 (print-short "Rick Rankin" "Rick_Rankin-P15254@email.mot.com")
+ − 2033 (print-short "Paul M Reilly" "pmr@pajato.com")
+ − 2034 (print-short "Jack Repenning" "jackr@sgi.com")
+ − 2035 (print-short "Daniel Rich" "drich@cisco.com")
+ − 2036 (print-short "Roland Rieke" "rol@darmstadt.gmd.de")
+ − 2037 (print-short "Art Rijos" "art.rijos@SNET.com")
+ − 2038 (print-short "Russell Ritchie" "ritchier@britannia-life.co.uk")
+ − 2039 (print-short "Roland" "rol@darmstadt.gmd.de")
+ − 2040 (print-short "Mike Russell" "mjruss@rchland.vnet.ibm.com")
+ − 2041 (print-short "Hajime Saitou" "hajime@jsk.t.u-tokyo.ac.jp")
+ − 2042 (print-short "Jan Sandquist" "etxquist@iqa.ericsson.se")
+ − 2043 (print-short "Marty Sasaki" "sasaki@spdcc.com")
+ − 2044 (print-short "SATO Daisuke" "densuke@ga2.so-net.or.jp")
+ − 2045 (print-short "Kenji Sato" "ken@ny.kdd.com")
+ − 2046 (print-short "Mike Scheidler" "c23mts@eng.delcoelect.com")
+ − 2047 (print-short "Daniel Schepler" "daniel@shep13.wustl.edu")
+ − 2048 (print-short "Holger Schauer" "schauer@coling.uni-freiburg.de")
+ − 2049 (print-short "Darrel Schneider" "darrel@slc.com")
+ − 2050 (print-short "Hayden Schultz" "haydens@ll.mit.edu")
+ − 2051 (print-short "Cotton Seed" "cottons@cybercom.net")
+ − 2052 (print-short "Axel Seibert" "seiberta@informatik.tu-muenchen.de")
+ − 2053 (print-short "Odd-Magne Sekkingstad" "oddms@ii.uib.no")
+ − 2054 (print-short "Gregory Neil Shapiro" "gshapiro@sendmail.org")
+ − 2055 (print-short "Justin Sheehy" "justin@linus.mitre.org")
+ − 2056 (print-short "John Shen" "zfs60@cas.org")
+ − 2057 (print-short "Murata Shuuichirou" "mrt@mickey.ai.kyutech.ac.jp")
+ − 2058 (print-short "Matt Simmons" "simmonmt@acm.org")
+ − 2059 (print-short "Dinesh Somasekhar" "somasekh@ecn.purdue.edu")
+ − 2060 (print-short "Jeffrey Sparkes" "jsparkes@bnr.ca")
+ − 2061 (print-short "Manoj Srivastava" "srivasta@pilgrim.umass.edu")
+ − 2062 (print-short "Francois Staes" "frans@kiwi.uia.ac.be")
+ − 2063 (print-short "Anders Stenman" "stenman@isy.liu.se")
+ − 2064 (print-short "Jason Stewart" "jasons@cs.unm.edu")
+ − 2065 (print-short "Rick Tait" "rickt@gnu.ai.mit.edu")
+ − 2066 (print-short "TANAKA Hayashi" "tanakah@mxa.mesh.ne.jp")
+ − 2067 (print-short "Samuel Tardieu" "sam@inf.enst.fr")
+ − 2068 (print-short "James Thompson" "thompson@wg2.waii.com")
+ − 2069 (print-short "Nobu Toge" "toge@accad1.kek.jp")
+ − 2070 (print-short "Raymond L. Toy" "toy@rtp.ericsson.se")
+ − 2071 (print-short "Remek Trzaska" "remek@npac.syr.edu")
+ − 2072 (print-short "TSUTOMU Nakamura" "tsutomu@rs.kyoto.omronsoft.co.jp")
+ − 2073 (print-short "Stefanie Teufel" "s.teufel@ndh.net")
+ − 2074 (print-short "Gary Thomas" "g.thomas@opengroup.org")
+ − 2075 (print-short "John Turner" "turner@xdiv.lanl.gov")
+ − 2076 (print-short "UENO Fumihiro" "7m2vej@ritp.ye.IHI.CO.JP")
+ − 2077 (print-short "Aki Vehtari" "Aki.Vehtari@hut.fi")
+ − 2078 (print-short "Juan E. Villacis" "jvillaci@cs.indiana.edu")
+ − 2079 (print-short "Vladimir Vukicevic" "vladimir@intrepid.com")
+ − 2080 (print-short "David Walte" "djw18@cornell.edu")
+ − 2081 (print-short "Peter Ware" "ware@cis.ohio-state.edu")
+ − 2082 (print-short "Christoph Wedler" "wedler@fmi.uni-passau.de")
+ − 2083 (print-short "Yoav Weiss" "yoav@zeus.datasrv.co.il")
+ − 2084 (print-short "Peter B. West" "p.west@uq.net.au")
+ − 2085 (print-short "Rod Whitby" "rwhitby@asc.corp.mot.com")
+ − 2086 (print-short "Rich Williams" "rdw@hplb.hpl.hp.com")
+ − 2087 (print-short "Raymond Wiker" "raymond@orion.no")
+ − 2088 (print-short "Peter Windle" "peterw@SDL.UG.EDS.COM")
+ − 2089 (print-short "David C Worenklein" "dcw@gcm.com")
+ − 2090 (print-short "Takeshi Yamada" "yamada@sylvie.kecl.ntt.jp")
+ − 2091 (print-short "Katsumi Yamaoka" "yamaoka@ga.sony.co.jp")
+ − 2092 (print-short "Jason Yanowitz" "yanowitz@eternity.cs.umass.edu")
+ − 2093 (print-short "La Monte Yarroll" "piggy@hilbert.maths.utas.edu.au")
+ − 2094 (print-short "Blair Zajac" "blair@olympia.gps.caltech.edu")
+ − 2095 (print-short "Volker Zell" "vzell@de.oracle.com")
+ − 2096 (print-short "Daniel Zivkovic" "daniel@canada.sun.com")
+ − 2097 (print-short "Karel Zuiderveld" "Karel.Zuiderveld@cv.ruu.nl")
+ − 2098 (widget-insert "\n"))
428
+ − 2099 (about-finish-buffer)))
+ − 2100
+ − 2101 ;;; about.el ends here