(set_window_buffer): Fix last change.
[bpt/emacs.git] / man / ack.texi
1 @c This is part of the Emacs manual.
2 @c Copyright (C) 1994,1995,1996,1997,1999,2000,2001
3 @c Free Software Foundation, Inc.
4 @c See file emacs.texi for copying conditions.
5 @c
6 @node Acknowledgments, Screen, Concept Index, Top
7 @chapter Acknowledgments
8
9 Many people have contributed code included in the Free Software
10 Foundation's distribution of GNU Emacs. To show our appreciation for
11 their public spirit, we list here in alphabetical order those who have
12 written substantial portions.
13
14 @c We should list here anyone who has contributed a new package,
15 @c and anyone who has made major enhancements in Emacs
16 @c that many users would notice and consider important.
17
18 @itemize @bullet
19 @item
20 Per Abhiddenware wrote @file{gnus-cite.el}, a citation-parsing facility
21 for news articles.
22
23 @item
24 Per Abrahamsen wrote the customization buffer facilities, as well as
25 @file{double.el} for typing accented characters not normally available
26 from the keyboard, @file{xt-mouse.el} which handles mouse commands
27 through Xterm, @file{gnus-cus.el} which implements customization
28 commands for Gnus, and @file{cpp.el} which hides or highlights parts of
29 C programs according to preprocessor conditionals.
30
31 @item
32 Tomas Abrahamsson wrote @file{artist.el}, a package for producing ASCII
33 art with a mouse or with keyboard keys.
34
35 @item
36 Jay K. Adams wrote @file{jka-compr.el}, providing automatic
37 decompression and recompression for compressed files.
38
39 @item
40 Joe Arceneaux wrote the original text property implementation, and
41 implemented support for X11.
42
43 @item
44 Miles Bader wrote @file{image-file.el}, support code for visiting image
45 files; and @file{minibuf-eldef.el}, a minor mode whereby the default
46 value is shown in the minibuffer prompt only when appropriate.
47
48 @item
49 David Bakhash wrote @file{strokes.el}, a mode for controlling Emacs by
50 moving the mouse in particular patterns.
51
52 @item
53 Eli Barzilay wrote @file{calculator.el}, a desktop calculator for
54 Emacs.
55
56 @item
57 Steven L.@: Baur wrote @file{earcon.el}, a facility for sound effects
58 for email and news messages, @file{footnote.el} which allows to include
59 footnotes in email messages, and @file{gnus-audio.el} which provides
60 sound effects for Gnus.
61
62 @item
63 Boaz Ben-Zvi wrote @file{profile.el}, to time Emacs Lisp functions.
64
65 @item
66 Ray Blaak wrote @file{delphi.el}, a major mode for editing Delphi
67 (Object Pascal) source code.
68
69 @item
70 Jim Blandy wrote Emacs 19's input system, brought its configuration and
71 build process up to the GNU coding standards, and contributed to the
72 frame support and multi-face support. Jim also wrote @file{tvi970.el},
73 terminal support for the TeleVideo 970 terminals.
74
75 @item
76 Per Bothner wrote @file{term.el}, a terminal emulator in an Emacs
77 buffer.
78
79 @item
80 Terrence M. Brannon wrote @file{landmark.el}, a neural-network robot
81 that learns landmarks.
82
83 @item
84 Frank Bresz wrote @file{diff.el}, a program to display @code{diff}
85 output.
86
87 @item
88 Peter Breton implemented:
89
90 @itemize @minus
91 @item
92 @file{dirtrack} which does better tracking of directory changes in shell
93 buffers,
94 @item
95 @file{filecache.el} which records which directories your files are in,
96 @item
97 @file{locate.el} which interfaces to the @code{locate} command,
98 @item
99 @file{find-lisp.el}, an emulation of the Unix @code{find} command in
100 Emacs Lisp,
101 @item
102 @file{net-utils.el}, and
103 @item
104 the ``generic mode'' feature.
105 @end itemize
106
107 @item
108 Emmanuel Briot wrote @file{xml.el}, an XML parser for Emacs.
109
110 @item
111 Kevin Broadey wrote @file{foldout.el}, providing folding extensions to
112 Emacs's outline modes.
113
114 @c @item
115 @c Vincent Broman wrote @file{ada.el}, a mode for editing Ada code
116 @c (since replaced by @file{ada-mode.el}).
117
118 @item
119 David M. Brown wrote @file{array.el}, for editing arrays and other
120 tabular data.
121
122 @item
123 W@l{}odek Bzyl and Ryszard Kubiak wrote @file{ogonek.el}, a package for
124 changing the encoding of Polish characters.
125
126 @item
127 Bill Carpenter provided @file{feedmail.el}, a package for massaging
128 outgoing mail messages and sending them through various popular mailers.
129
130 @item
131 Per Cederqvist and Inge Wallin wrote @file{ewoc.el}, an Emacs widget for
132 manipulating object collections.
133
134 @item
135 Hans Chalupsky wrote @file{advice.el}, an overloading mechanism for
136 Emacs Lisp functions, and @file{trace.el}, a tracing facility for Emacs
137 Lisp.
138
139 @item
140 Chris Chase and Carsten Dominik wrote @file{idlwave.el}, an editing mode
141 for IDL and WAVE CL.
142
143 @item
144 Bob Chassell wrote @file{texnfo-upd.el} and @file{makeinfo.el}, modes
145 and utilities for working with Texinfo files; and @file{page-ext.el},
146 commands for extended page handling.
147
148 @item
149 Andrew Choi wrote the Macintosh support code, and contributed
150 @file{mac-win.el}, support for the Mac window system.
151
152 @item
153 James Clark wrote @file{sgml-mode.el}, a mode for editing SGML
154 documents, and contributed to Emacs's dumping procedures.
155 @file{sgml-mode.el} was later adapted by Eric Raymond, Daniel Pfeiffer,
156 and Francesco Potorti.
157
158 @item
159 Mike Clarkson wrote @file{edt.el}, an emulation of DEC's EDT editor.
160
161 @item
162 Glynn Clements provided @file{gamegrid.el} and a couple of games that
163 use it, Snake and Tetris.
164
165 @item
166 Georges Brun-Cottan and Stefan Monnier wrote @file{easy-mmode.el}, a
167 package for easy definition of major and minor modes.
168
169 @item
170 Andrew Csillag wrote M4 mode (@file{m4-mode.el}).
171
172 @item
173 Doug Cutting and Jamie Zawinski wrote @file{disass.el}, a disassembler
174 for compiled Emacs Lisp code.
175
176 @item
177 Michael DeCorte wrote @file{emacs.csh}, a C-shell script that starts a
178 new Emacs job, or restarts a paused Emacs if one exists.
179
180 @item
181 Gary Delp wrote @file{mailpost.el}, an interface between RMAIL and the
182 @file{/usr/uci/post} mailer.
183
184 @item
185 Matthieu Devin wrote @file{delsel.el}, a package to make newly-typed
186 text replace the current selection.
187
188 @item
189 Eric Ding contributed @file{goto-addr.el},
190
191 @item
192 Carsten Dominik wrote @file{reftex.el}, a package for setting up
193 labels and cross-references in La@TeX{} documents.
194
195 @item
196 Scott Draves wrote @file{tq.el}, help functions for maintaining
197 transaction queues between Emacs and its subprocesses.
198
199 @item
200 Benjamin Drieu wrote @file{pong.el}, an implementation of the classical
201 pong game.
202
203 @item
204 Viktor Dukhovni wrote support for dumping under SunOS version 4.
205
206 @item
207 John Eaton co-wrote Octave mode (@file{octave.el} and related files).
208
209 @item
210 Rolf Ebert co-wrote Ada mode (@file{ada-mode.el}).
211
212 @item
213 Stephen Eglen implemented @file{mspools.el}, for use with Procmail,
214 which tells you which mail folders have mail waiting in them, and
215 @file{iswitchb.el}, a feature for incremental reading and completion of
216 buffer names.
217
218 @item
219 @c iftex
220 Torbj@"orn
221 @c end iftex
222 @c ifinfo
223 @c Torbjorn
224 @c end ifinfo
225 Einarsson contributed the Fortran 90 mode (@file{f90.el}).
226
227 @item
228 Tsugutomo Enami co-wrote the support for international character sets.
229
230 @item
231 Hans Henrik Eriksen wrote @file{simula.el}, a mode for editing SIMULA 87
232 code.
233
234 @item
235 Michael Ernst wrote @file{reposition.el}, a command for recentering a
236 function's source code and preceding comment on the screen.
237
238 @item
239 Ata Etemadi wrote @file{cdl.el}, functions for working with Common Data
240 Language source code.
241
242 @item
243 Frederick Farnbach implemented @file{morse.el}, which converts text to
244 Morse code.
245
246 @item
247 Oscar Figueiredo wrote EUDC, the Emacs Unified Directory Client, which
248 is an interface to directory servers via LDAP, CCSO PH/QI, or BBDB; and
249 @file{ldap.el}, the LDAP client interface.
250
251 @item
252 Fred Fish wrote the support for dumping COFF executable files.
253
254 @item
255 Karl Fogel wrote:
256
257 @itemize @minus
258 @item
259 @file{bookmark.el}, for creating named placeholders, saving them and
260 jumping to them later,
261 @item
262 @file{mail-hist.el}, a history mechanism for outgoing mail messages, and
263 @item
264 @file{saveplace.el}, for preserving point's location in files between
265 editing sessions.
266 @end itemize
267
268 @item
269 Gary Foster wrote @file{crisp.el}, the emulation for CRiSP and Brief
270 editors, and @file{scroll-lock.el} (now @file{scroll-all.el}) a mode
271 for scrolling several buffers together.
272
273 @item
274 Noah Friedman wrote @file{rlogin.el}, an interface to Rlogin,
275 @file{type-break.el}, which reminds you to take periodic breaks from
276 typing, and @code{eldoc-mode}, a mode to show the defined parameters or
277 the doc string for the Lisp function near point. With Roland McGrath,
278 he wrote @file{rsz-mini.el}, a minor mode to automatically resize the
279 minibuffer to fit the text it contains.
280
281 @item
282 Keith Gabryelski wrote @file{hexl.el}, a mode for editing binary files.
283
284 @item
285 Kevin Gallagher rewrote and enhanced the EDT emulation, and wrote
286 @file{flow-ctrl.el}, a package for coping with unsuppressible XON/XOFF
287 flow control.
288
289 @item
290 Kevin Gallo added multiple-frame support for Windows NT and wrote
291 @file{w32-win.el}, support functions for the MS-Windows window system.
292
293 @item
294 Howard Gayle wrote:
295
296 @itemize @minus
297 @item
298 the C and lisp code for display tables and case tables,
299 @item
300 @file{rot13.el}, a command to display the plain-text form of a buffer
301 encoded with the Caesar cipher,
302 @item
303 @file{case-table.el}, code to extend the character set and support case
304 tables,
305 @item
306 much of the support for the ISO-8859 European character sets (which
307 includes @file{iso-ascii.el}, @file{iso-insert.el}, @file{iso-swed.el},
308 @file{latin-1.el}, @file{iso-syntax.el}, @file{iso-transl.el},
309 @file{swedish.el}), and
310 @item
311 @file{vt100-led.el}, a package for controlling the LED's on
312 VT100-compatible terminals.
313 @end itemize
314
315 @item
316 Stephen Gildea made the Emacs quick reference card, and made many
317 contributions for @file{time-stamp.el}, a package for maintaining
318 last-change time stamps in files.
319
320 @item
321 Julien Gilles wrote @file{gnus-ml.el}, a mailing list minor mode for
322 Gnus.
323
324 @item
325 David Gillespie wrote:
326
327 @itemize @minus
328 @item
329 Emacs 19's Common Lisp compatibility packages, replacing the old package
330 by Cesar Augusto Quiroz Gonzalez,
331 @item
332 @file{complete.el}, a partial completion mechanism, and
333 @item
334 @file{edmacro.el}, a package for editing keyboard macros.
335 @end itemize
336
337 @item
338 Bob Glickstein contributed the @file{sregex.el} feature, a facility for
339 writing regexps using a Lisp-like syntax.
340
341 @item
342 Boris Goldowsky wrote:
343
344 @itemize @minus
345 @item
346 @file{avoid.el}, a package to keep the mouse cursor out of the way of
347 the text cursor,
348 @item
349 @file{shadowfile.el}, a package for keeping identical copies of files in
350 more than one place,
351 @item
352 @file{format.el}, a package for reading and writing files in various
353 formats,
354 @item
355 @file{enriched.el}, a package for saving text properties in files, and
356 @item
357 @file{facemenu.el}, a package for specifying faces.
358 @end itemize
359
360 @item
361 Michelangelo Grigni wrote @file{ffap.el} which visits a file,
362 taking the file name from the buffer.
363
364 @item
365 Odd Gripenstam wrote @file{dcl-mode.el} for editing DCL command files.
366
367 @item
368 Michael Gschwind wrote @file{iso-cvt.el}, a package to convert between
369 the ISO 8859-1 character set and the notations for non-@code{ASCII}
370 characters used by @TeX{} and net tradition, and @file{latin-2.el}, code
371 which sets up case-conversion and syntax tables for the ISO Latin-2
372 character set.
373
374 @item
375 Henry Guillaume wrote @file{find-file.el}, a package to visit files
376 related to the currently visited file.
377
378 @item
379 Doug Gwyn wrote the portable @code{alloca} implementation.
380
381 @item
382 Ken'ichi Handa implemented most of the support for international
383 character sets, and wrote @file{isearch-x.el}, a facility for searching
384 non-ASCII text. Together with Naoto Takahashi, he wrote
385 @file{quail.el}, a simple input facility for typing non-ASCII text from
386 an ASCII keyboard. Ken'ichi also wrote @file{ps-bdf.el}, a BDF font
387 support for printing non-ASCII text on a PostScript printer.
388
389 @item
390 Chris Hanson wrote @file{netuname.el}, a package to use HP-UX's Remote
391 File Access facility from Emacs.
392
393 @item
394 K. Shane Hartman wrote:
395
396 @itemize @minus
397 @item
398 @file{chistory.el} and @file{echistory.el}, packages for browsing
399 command history lists,
400 @item
401 @file{electric.el} and @file{helper.el}, providing an alternative
402 command loop and appropriate help facilities,
403 @item
404 @file{emacsbug.el}, a package for reporting Emacs bugs,
405 @item
406 @file{picture.el}, a mode for editing ASCII pictures, and
407 @item
408 @file{view.el}, a package for perusing files and buffers without editing
409 them.
410 @end itemize
411
412 @item
413 John Heidemann wrote @file{mouse-copy.el} and @file{mouse-drag.el},
414 which provide alternative mouse-based editing and scrolling features.
415 He also contributed @file{zone-mode.el}, a major mode for editing DNS
416 zone files.
417
418 @item
419 Jon K Hellan wrote @file{utf7.el}, support for Mail-safe transformation
420 format of Unicode.
421
422 @item
423 Markus Heritsch co-wrote Ada mode (@file{ada-mode.el}).
424
425 @item
426 Karl Heuer wrote the original blessmail script, implemented the
427 @code{intangible} text property, and rearranged the structure of the
428 @code{Lisp_Object} type to allow for more data bits.
429
430 @item
431 Manabu Higashida ported Emacs to the MS-DOS operating system.
432
433 @item
434 Anders Holst wrote @file{hippie-exp.el}, a versatile completion and
435 expansion package.
436
437 @item
438 Kurt Hornik co-wrote Octave mode (@file{octave.el} and related files).
439
440 @item
441 Tom Houlder wrote @file{mantemp.el}, which generates manual C@t{++}
442 template instantiations.
443
444 @item
445 Denis Howe wrote @file{browse-url.el}, a package for invoking a WWW
446 browser to display a URL.
447
448 @item
449 Lars Magne Ingebrigtsen did a major redesign of the Gnus news-reader and
450 wrote many of its parts.
451
452 @item
453 Andrew Innes contributed extensively to the MS-Windows support.
454
455 @item
456 Seiichiro Inoue improved Emacs' XIM support.
457
458 @item
459 Kyle Jones wrote @file{life.el}, a package to play Conway's ``life'' game,
460 and @file{mldrag.el}, a package which allows the user to resize windows
461 by dragging mode lines and vertical window separators with the mouse.
462
463 @item
464 Terry Jones wrote @file{shadow.el}, a package for finding potential
465 load-path problems when some Lisp file ``shadows'' another.
466
467 @item
468 Simon Josefsson wrote @file{flow-fill.el}, a package for interpreting
469 RFC2646 formatted text in messages, @file{imap.el}, an Emacs Lips
470 library for talking to IMAP servers, @file{nnimap}, the IMAP
471 back-end for Gnus, nd @file{rfc2104.el}, a hashed message authentication
472 facility.
473
474 @item
475 Tomoji Kagatani implemented @file{smtpmail.el}, used for sending out
476 mail with SMTP.
477
478 @item
479 David Kaufman wrote @file{yow.c}, an essential utility program for the
480 hopelessly pinheaded.
481
482 @item
483 Henry Kautz wrote @file{bib-mode.el}, a mode for maintaining
484 bibliography databases compatible with @code{refer} (the @code{troff}
485 version) and @code{lookbib}, and @file{refbib.el}, a package to convert
486 those databases to the format used by the LaTeX text formatting package.
487
488 @item
489 Howard Kaye wrote @file{sort.el}, commands to sort text in Emacs
490 buffers.
491
492 @item
493 Michael Kifer wrote @file{ediff.el}, an interactive interface to the
494 @command{diff}, @command{patch}, and @command{merge} programs, and
495 Viper, the newest emulation for VI.
496
497 @item
498 Richard King wrote the first version of @file{userlock.el} and
499 @file{filelock.c}, which provide simple support for multiple users
500 editing the same file. He also wrote the initial version of
501 @file{uniquify.el}, a facility to make buffer names unique by adding
502 parts of the file's name to the buffer name.
503 @c We're not using his backquote.el any more.
504
505 @item
506 Peter Kleiweg wrote @file{ps-mode.el}, a major mode for editing
507 PostScript files and running a PostScript interpreter interactively from
508 within Emacs.
509
510 @item
511 Larry K. Kolodney wrote @file{cvtmail.c}, a program to convert the mail
512 directories used by Gosling Emacs into RMAIL format.
513
514 @item
515 David M.@: Koppelman wrote @file{hi-lock.el}, a minor mode for
516 interactive automatic highlighting of parts of the buffer text.
517
518 @item
519 Robert Krawitz wrote the original @file{xmenu.c}, part of Emacs's pop-up
520 menu support.
521
522 @item
523 Sebastian Kremer wrote Emacs 19's @code{dired-mode}, with contributions
524 by Lawrence R. Dodd. He also wrote @file{ls-lisp.el}, a Lisp emulation
525 of the @code{ls} command for platforms which don't have @code{ls} as a
526 standard program.
527
528 @item
529 Geoff Kuenning wrote Emacs 19's @file{ispell.el}, based on work by Ken
530 Stevens and others.
531
532 @item
533 David K@ringaccent{a}gedal wrote @file{tempo.el}, providing support for
534 easy insertion of boilerplate text and other common constructions.
535
536 @item
537 Daniel LaLiberte wrote:
538
539 @itemize @minus
540 @item
541 @file{edebug.el}, a source-level debugger for Emacs Lisp,
542 @item
543 @file{cl-specs.el}, specifications to help @code{edebug} debug code
544 written using David Gillespie's Common Lisp support,
545 @item
546 @file{cust-print.el}, a customizable package for printing lisp objects,
547 @item
548 @file{eval-reg.el}, a re-implementation of @code{eval-region} in Emacs
549 Lisp, and
550 @item
551 @file{isearch.el}, Emacs's incremental search minor mode.
552 @end itemize
553
554 @item
555 James R. Larus wrote @file{mh-e.el}, an interface to the MH mail system.
556
557 @item
558 Vinicius Jose Latorre wrote:
559
560 @itemize @minus
561 @item
562 @code{ps-print}, a package for pretty-printing Emacs buffers to
563 PostScript printers,
564 @item
565 @file{delim-col.el}, a package to arrange text into columns,
566 @item
567 @file{ebnf2ps.el}, a package that translates EBNF grammar to a syntactic
568 chart that can be printed to a PostScript printer.
569 @end itemize
570
571 @item
572 Frederic Lepied contributed @file{expand.el}, which uses the abbrev
573 mechanism for inserting programming constructs.
574
575 @item
576 Peter Liljenberg wrote @file{elint.el}, a Lint-style code checker for
577 Emacs Lisp programs.
578
579 @item
580 Lars Lindberg wrote @file{msb.el}, which provides more flexible menus
581 for buffer selection, and rewrote @file{dabbrev.el}.
582
583 @item
584 Anders Lindgren wrote @file{autorevert.el}, a package for automatically
585 reverting files visited by Emacs that were changed on disk;
586 @file{cwarn.el}, a package to highlight suspicious C and C@t{++}
587 constructs; and @file{follow.el}, a minor mode to synchronize windows
588 that show the same buffer.
589
590 @item
591 Dave Love wrote:
592
593 @itemize @minus
594 @item
595 @code{autoarg-mode}, a global minor mode whereby digit keys supply
596 prefix arguments, and @code{autoarg-kp-mode} which redefines the keypad
597 numeric keys to digit arguments,
598 @item
599 @file{autoconf.el}, a mode for editing Autoconf @file{configure.in}
600 files,
601 @item
602 @file{elide-head.el}, a package for eliding boilerplate text, such as
603 copyright notices, from file headers,
604 @item
605 @file{hl-line.el}, a package that provides a minor mode for highlighting
606 the line in the current window on which point is,
607 @item
608 @file{latin-8.el} and @file{latin-9.el}, code which sets up
609 case-conversion and syntax tables for the ISO Latin-8 and Latin-9
610 character sets,
611 @item
612 @file{latin1-disp.el}, a package that allows to display ISO 8859
613 characters on Latin-1 terminals by setting up appropriate display
614 tables,
615 @item
616 @file{refill.el}, a mode for automatic paragraph refilling, akin to
617 typical word processors,
618 @item
619 @file{smiley-ems.el}, a facility for displaying smiley faces, and
620 @item
621 @file{tool-bar.el}, a mode to control the display of the Emacs tool bar.
622 @end itemize
623
624 @item
625 Eric Ludlam wrote the Speedbar package and @file{checkdoc.el}, a package
626 for checking doc strings in Emacs Lisp programs.
627
628 @item
629 Christopher J.@: Madsen wrote @file{decipher.el}, a package for cracking
630 simple substitution ciphers.
631
632 @item
633 Neil M. Mager wrote @file{appt.el}, functions to notify users of their
634 appointments. It finds appointments recorded in the diary files
635 generated by Edward M. Reingold's @code{calendar} package.
636
637 @item
638 Ken Manheimer wrote @file{allout.el}, a mode for manipulating and
639 formatting outlines, and @file{icomplete.el}, which provides incremental
640 completion feedback in the minibuffer.
641
642 @item
643 Bill Mann wrote @file{perl-mode.el}, a mode for editing Perl code.
644
645 @item
646 Brian Marick and Daniel LaLiberte wrote @file{hideif.el}, support for
647 hiding selected code within C @code{#ifdef} clauses.
648
649 @item
650 Simon Marshall wrote:
651
652 @itemize @minus
653 @item
654 @file{fast-lock.el}, which caches the face data computed by Font Lock mode,
655 @item
656 @file{lazy-lock.el}, which delays fontification in Font Lock mode
657 until text is actually displayed, and
658 @item
659 @file{regexp-opt.el}, which generates a regular expression from a list
660 of strings.
661 @end itemize
662
663 Simon also extended @file{comint.el}, originally written by Olin
664 Shivers.
665
666 @item
667 Bengt Martensson, Mark Shapiro, Mike Newton, Aaron Larson, and Stefan
668 Schoef, wrote @file{bibtex.el}, a mode for editing Bib@TeX{}
669 bibliography files.
670
671 @item
672 Charlie Martin wrote @file{autoinsert.el}, which provides automatic
673 mode-sensitive insertion of text into new files.
674
675 @item
676 Thomas May wrote @file{blackbox.el}, a version of the traditional
677 blackbox game.
678
679 @item
680 Roland McGrath wrote:
681
682 @itemize @minus
683 @item
684 @file{compile.el}, a package for running compilations in a buffer, and
685 then visiting the locations reported in error messages,
686 @item
687 @file{etags.el}, a package for jumping to function definitions and
688 searching or replacing in all the files mentioned in a @file{TAGS} file,
689 @item
690 @file{find-dired.el}, for using @code{dired} commands on output from the
691 @code{find} program, with Sebastian Kremer,
692 @item
693 @file{map-ynp.el}, a general purpose boolean question-asker,
694 @item
695 @file{autoload.el}, providing semi-automatic maintenance of autoload
696 files, and
697 @item
698 @file{upd-copyr.el}, providing semi-automatic maintenance of copyright
699 notices in source code.
700 @end itemize
701
702 @item
703 David Megginson wrote @file{derived.el}, which allows one to define new
704 major modes by inheriting key bindings and commands from existing major
705 modes.
706
707 @item
708 Will Mengarini wrote @file{repeat.el}, a command to repeat the preceding
709 command with its arguments.
710
711 @item
712 Wayne Mesard wrote @file{hscroll.el} which does horizontal scrolling
713 automatically.
714
715 @item
716 Brad Miller wrote @file{gnus-gl.el}, a Gnus interface for GroupLens.
717
718 @item
719 Richard Mlynarik wrote:
720
721 @itemize @minus
722 @item
723 @file{cl-indent.el}, a package for indenting Common Lisp code,
724 @item
725 @file{ebuff-menu.el}, an ``electric'' browser for buffer listings,
726 @item
727 @file{ehelp.el}, bindings for browsing help screens,
728 @item
729 @file{rfc822.el}, a parser for E-mail addresses in the RFC-822 format,
730 used in mail messages and news articles,
731 @item
732 @file{terminal.el}, a terminal emulator for Emacs subprocesses, and
733 @item
734 @file{yow.el}, an essential utility (try @kbd{M-x yow}).
735 @end itemize
736
737 @item
738 Gerd Moellmann wrote:
739
740 @itemize @minus
741 @item
742 the new display engine for Emacs 21,
743 @item
744 the asynchronous timers facility (@file{atimer.c}),
745 @item
746 the @code{ebrowse} C@t{++} browser,
747 @item
748 @file{jit-lock.el}, the Just-In-Time font-lock support mode,
749 @item
750 @file{tooltip.el}, a package for displaying tooltips, and
751 @item
752 @file{authors.el} package for maintaining the @file{AUTHORS} files.
753 @end itemize
754
755 Gerd took over the Emacs maintenance as the head maintainer since the
756 beginning of Emacs 21 development.
757
758 @item
759 Stefan Monnier wrote:
760
761 @itemize @minus
762 @item
763 @code{PCL-CVS}, a directory-level front end to the CVS version control
764 system,
765 @item
766 @file{smerge-mode.el}, a minor mode for resolving @code{diff3}
767 conflicts, and
768 @item
769 @file{diff-mode.el}, a mode for viewing and editing context diffs.
770 @end itemize
771
772 @item
773 Keith Moore wrote @file{aixcc.lex}, a pre-processor designed to help
774 Emacs parse the error messages produced by the AIX C compiler.
775
776 @item
777 Morioka Tomohiko wrote several packages for MIME support in Gnus and
778 elsewhere.
779
780 @item
781 Sen Nagata wrote @file{crm.el}, a package for reading multiple strings
782 with completion, and @file{rfc2368.el}, support for @code{mailto:}
783 URLs.
784
785 @item
786 Erik Naggum wrote the time-conversion functions, and has tested daily
787 the latest source code up to and including Emacs version 20. He also
788 wrote @file{disp-table.el}, a package for dealing with display tables,
789 @file{latin-4.el} and @file{latin-5.el}, code which sets up
790 case-conversion and syntax tables for the ISO Latin-4 and Latin-5
791 character sets, @file{mailheader.el}, a pacakage for parsing email
792 headers, and @file{parse-time.el}, a package for parsing time strings.
793
794 @item
795 Thomas Neumann and Eric Raymond wrote @file{makefile.el} (now
796 @file{make-mode.el}), a mode for editing makefiles.
797
798 @item
799 Thien-Thi Nguyen and Dan Nicolaescu wrote @file{hideshow.el}, a minor
800 mode for selectively displaying blocks of text.
801
802 @item
803 Dan Nicolaescu wrote @file{romanian.el}, support for editing Romanian
804 text, and @file{iris-ansi.el}, support for running Emacs on SGI's
805 @code{xwsh} and @code{winterm} terminal emulators.
806
807 @item
808 Jurgen Nickelsen wrote @file{ws-mode.el}, providing WordStar emulation.
809
810 @item
811 Jeff Norden wrote @file{kermit.el}, a package to help the Kermit
812 dialup communications program run comfortably in an Emacs shell buffer.
813
814 @item
815 Andrew Norman wrote @file{ange-ftp.el}, providing transparent FTP
816 support.
817
818 @item
819 Alexandre Oliva wrote @file{gnus-mlspl.el}, a group params-based mail
820 splitting mechanism.
821
822 @item
823 David Pearson contributed @file{quickurl.el}, a simple method of
824 inserting a URL into the current buffer based on text at point;
825 @file{5x5.el}, a game to fill all squares on the field.
826
827 @item
828 Jeff Peck wrote:
829
830 @itemize @minus
831 @item
832 @file{emacstool.c}, support for running Emacs under SunView/Sun Windows,
833 @item
834 @file{sun.el}, keybindings for sunterm keys,
835 @item
836 @file{sun-curs.el}, cursor definitions for Sun Windows, and
837 @item
838 @file{sun-fns.el} and @file{sun-mouse.el}, providing mouse support for
839 Sun Windows.
840 @end itemize
841
842 @item
843 Damon Anton Permezel wrote @file{hanoi.el}, an animated demonstration of
844 the ``Towers of Hanoi'' puzzle.
845
846 @item
847 William M.@: Perry wrote @file{mailcap.el}, a MIME media types
848 configuration facility, and @file{mwheel.el}, support for MS
849 Intellimouse type mice with wheels.
850
851 @item
852 Per Persson wrote @file{gnus-vm.el}, the VM interface for Gnus.
853
854 @item
855 Jens Petersen wrote @file{find-func.el}, which makes it easy to find
856 the source code for an Emacs Lisp function or variable.
857
858 @item
859 Daniel Pfeiffer wrote:
860
861 @itemize @minus
862 @item
863 @file{copyright.el}, a package for updating copyright notices in files,
864 @item
865 @file{executable.el}, a package for executing interpreter scripts,
866 @item
867 @file{sh-script.el}, a mode for editing shell scripts,
868 @item
869 @file{skeleton.el}, implementing a concise language for writing
870 statement skeletons, and
871 @item
872 @file{two-column.el}, a minor mode for simultaneous two-column editing.
873 @end itemize
874
875 Daniel also rewrote @file{apropos.el}, originally written by Joe Wells,
876 and, together with Jim Blandy, co-authored @file{wyse50.el}, support for
877 Wyse 50 terminals.
878
879 @item
880 Richard L.@: Pieri wrote @file{pop3.el}, a Post Office Protocol (RFC
881 1460) interface for Emacs.
882
883 @item
884 Fred Pierresteguy and Paul Reilly made Emacs work with X Toolkit
885 widgets.
886
887 @item
888 Christian Plaunt wrote @file{soundex.el}, an implementation of the
889 Soundex algorithm for comparing English words by their pronunciation.
890
891 @item
892 David Ponce wrote @file{recentf.el}, a package that puts a menu of
893 recently visited files in the Emacs menu bar.
894
895 @item
896 Francesco A. Potorti wrote @file{cmacexp.el}, providing a command which
897 runs the C preprocessor on a region of a file and displays the results.
898 He also expanded and redesigned the @code{etags} program.
899
900 @item
901 Michael D. Prange and Steven A. Wood wrote @file{fortran.el}, a mode for
902 editing FORTRAN code.
903 @c We're not distributing his tex-mode.el anymore; we're using Ed Reingold's.
904
905 @item
906 Mukesh Prasad contributed @file{vmsproc.el}, a facility for running
907 asynchronous subprocesses on VMS.
908
909 @item
910 Marko Rahamaa wrote @file{latin-3.el}, code which sets up
911 case-conversion and syntax tables for the ISO Latin-3 charact set.
912
913 @item
914 Ashwin Ram wrote @file{refer.el}, commands to look up references in
915 bibliography files by keyword.
916
917 @item
918 Eric S. Raymond wrote:
919
920 @itemize @minus
921 @item
922 @file{vc.el}, an interface to the RCS and SCCS source code version
923 control systems, with Paul Eggert,
924 @item
925 @file{gud.el}, a package for running source-level debuggers like GDB
926 and SDB in Emacs,
927 @item
928 @file{asm-mode.el}, a mode for editing assembly language code,
929 @item
930 @file{AT386.el}, terminal support package for IBM's AT keyboards,
931 @item
932 @file{cookie1.el}, support for ``fortune-cookie'' programs like
933 @file{yow.el} and @file{spook.el},
934 @item
935 @file{finder.el}, a package for finding Emacs Lisp packages by keyword
936 and topic,
937 @item
938 @file{keyswap.el}, code to swap the @key{BS} and @key{DEL} keys,
939 @item
940 @file{loadhist.el}, functions for loading and unloading Emacs features,
941 @item
942 @file{lisp-mnt.el}, functions for working with the special headers used
943 in Emacs Lisp library files, and
944 @item
945 code to set and make use of the @code{load-history} lisp variable, which
946 records the source file from which each lisp function loaded into Emacs
947 came.
948 @end itemize
949
950 @item
951 Edward M. Reingold wrote the extensive calendar and diary support (try
952 @kbd{M-x calendar}), with contributions from Stewart Clamen, Nachum
953 Dershowitz, Paul Eggert, Steve Fisk, Michael Kifer, and Lara Rios. Andy
954 Oram contributed to its documentation. Reingold has also contributed to
955 @file{tex-mode.el}, a mode for editing @TeX{} files, as have William
956 F. Schelter, Dick King, Stephen Gildea, Michael Prange, and Jacob Gore.
957
958 @item
959 Alex Rezinsky contributed @file{which-func.el}, a mode that prints the
960 name of the current function in the mode line.
961
962 @item
963 Rob Riepel contributed @file{tpu-edt.el} and its associated files,
964 providing an emulation of the VMS TPU text editor emulating the VMS EDT
965 editor, and @file{vt-control.el}, providing some control functions for
966 the DEC VT line of terminals.
967
968 @item
969 Roland B. Roberts contributed much of the VMS support distributed with
970 Emacs 19, along with Joseph M. Kelsey, and @file{vms-pmail.el}, support
971 for using Emacs within VMS MAIL.
972
973 @item
974 John Robinson wrote @file{bg-mouse.el}, support for the mouse on the BBN
975 Bitgraph terminal.
976
977 @item
978 Danny Roozendaal implemented @file{handwrite.el}, which converts text
979 into ``handwriting.''
980
981 @item
982 William Rosenblatt wrote @file{float.el}, implementing a floating-point
983 numeric type using Lisp cons cells and integers.
984
985 @item
986 Guillermo J. Rozas wrote @file{scheme.el}, a mode for editing Scheme and
987 DSSSL code, and @file{fakemail.c}, an interface to the System V mailer.
988
989 @item
990 Ivar Rummelhoff provided @file{winner.el}, which records
991 recent window configurations so you can move back to them.
992
993 @item
994 Jason Rumney has ported the Emacs 21 display engine to MS-Windows, and
995 contributed extensively to the MS-Windows port of Emacs.
996
997 @item
998 Wolfgang Rupprecht contributed Emacs 19's floating-point support
999 (including @file{float-sup.el} and @file{floatfns.c}), and
1000 @file{sup-mouse.el}, support for the Supdup mouse on lisp machines.
1001
1002 @item
1003 James B. Salem and Brewster Kahle wrote @file{completion.el}, providing
1004 dynamic word completion.
1005
1006 @item
1007 Masahiko Sato wrote @file{vip.el}, an emulation of the VI editor.
1008
1009 @item
1010 Holger Schauer wrote @file{fortune.el}, a package for using fortune in
1011 message signatures.
1012
1013 @item
1014 William Schelter wrote @file{telnet.el}, support for @code{telnet}
1015 sessions within Emacs.
1016
1017 @item
1018 Ralph Schleicher contributed @file{battery.el}, a package for displaying
1019 laptop computer battery status, and @file{info-look.el}, a package for
1020 looking up Info documentation for symbols in the buffer.
1021
1022 @item
1023 Michael Schmidt and Tom Perrine wrote @file{modula2.el}, a mode for
1024 editing Modula-2 code, based on work by Mick Jordan and Peter Robinson.
1025
1026 @item
1027 Ronald S. Schnell wrote @file{dunnet.el}, a text adventure game.
1028
1029 @item
1030 Philippe Schnoebelen wrote @file{gomoku.el}, a Go Moku game played
1031 against Emacs, and @file{mpuz.el}, a multiplication puzzle.
1032
1033 @item
1034 Jan Schormann wrote @file{solitaire.el}, an Emacs Lisp implementation of
1035 the Solitaire game.
1036
1037 @item
1038 Alex Schroeder wrote @file{ansi-color.el}, a package for translating
1039 ANSI color escape sequences to Emacs faces, and @file{sql.el}, a package
1040 for interactively running an SQL interpreter in an Emacs buffer.
1041
1042 @item
1043 Randal Schwartz wrote @file{pp.el}, a pretty-printer for lisp objects.
1044
1045 @item
1046 Oliver Seidel wrote @file{todo-mode.el}, a package for maintaining
1047 @file{TODO} list files.
1048
1049 @item
1050 Manuel Serrano contributed the Flyspell package that does spell checking
1051 as you type.
1052
1053 @item
1054 Hovav Shacham wrote @file{windmove.el}, a set of commands for selecting
1055 windows based on their geometrical position on the frame.
1056
1057 @item
1058 Stanislav Shalunov wrote @file{uce.el}, for responding to unsolicited
1059 commercial email.
1060
1061 @item
1062 Richard Sharman contributed @file{hilit-chg.el}, which uses colors
1063 to show recent editing changes.
1064
1065 @item
1066 Olin Shivers wrote:
1067
1068 @itemize @minus
1069 @item
1070 @file{comint.el}, a library for modes running interactive command-line-
1071 oriented subprocesses,
1072 @item
1073 @file{cmuscheme.el}, for running inferior Scheme processes,
1074 @item
1075 @file{inf-lisp.el}, for running inferior Lisp process, and
1076 @item
1077 @file{shell.el}, for running inferior shells.
1078 @end itemize
1079
1080 @item
1081 Espen Skoglund wrote @file{pascal.el}, a mode for editing Pascal code.
1082
1083 @item
1084 Rick Sladkey wrote @file{backquote.el}, a lisp macro for creating
1085 mostly-constant data.
1086
1087 @item
1088 Lynn Slater wrote @file{help-macro.el}, a macro for writing interactive
1089 help for key bindings.
1090
1091 @item
1092 Chris Smith wrote @file{icon.el}, a mode for editing Icon code.
1093
1094 @item
1095 David Smith wrote @file{ielm.el}, a mode for interacting with the Emacs
1096 Lisp interpreter as a subprocess.
1097
1098 @item
1099 Paul D. Smith wrote @file{snmp-mode.el}.
1100
1101 @item
1102 William Sommerfeld wrote @file{scribe.el}, a mode for editing Scribe
1103 files, and @file{server.el}, a package allowing programs to send files
1104 to an extant Emacs job to be edited.
1105
1106 @item
1107 Andre Spiegel made many contributions to the Emacs Version Control
1108 package, and in particular made it support multiple back ends.
1109
1110 @item
1111 Michael Staats wrote @file{pc-select.el}, which rebinds keys for
1112 selecting regions to follow many other systems.
1113
1114 @item
1115 Richard Stallman invented Emacs, and then wrote:
1116
1117 @itemize @minus
1118 @item
1119 @file{easymeny.el}, a facility for defining Emacs menus,
1120 @item
1121 @file{menu-bar.el}, the Emacs menu bar support code,
1122 @item
1123 @file{paren.el}, a package to make matching parentheses stand out in
1124 color, and
1125 @item
1126 most of the rest of Emacs code.
1127 @end itemize
1128
1129 @item
1130 Sam Steingold wrote @file{gulp.el}, a facility for asking package
1131 maintainers for updated versions of their packages via e-mail, and
1132 @file{midnight.el}, a package for running a command every midnight.
1133
1134 @item
1135 Ake Stenhoff and Lars Lindberg wrote @file{imenu.el}, a framework for
1136 browsing indices made from buffer contents.
1137
1138 @item
1139 Peter Stephenson contributed @file{vcursor.el}, which implements a
1140 ``virtual cursor'' that you can move with the keyboard and use for
1141 copying text.
1142
1143 @item
1144 Ken Stevens wrote the initial version of @file{ispell.el} and maintains
1145 that package since Ispell 3.1 release.
1146
1147 @item
1148 Jonathan Stigelman wrote @file{hilit19.el}, a package providing
1149 automatic highlighting in source code buffers, mail readers, and other
1150 contexts.
1151
1152 @item
1153 Martin Stjernholm co-authored CC Mode, a major editing mode for C,
1154 C@t{++}, Objective-C, and Java code.
1155
1156 @item
1157 Steve Strassman did not write @file{spook.el}, and even if he did, he
1158 really didn't mean for you to use it in an anarchistic way.
1159
1160 @item
1161 Olaf Sylvester wrote @file{bs.el}, a package for manipulating Emacs
1162 buffers.
1163
1164 @item
1165 Tibor @v{S}imko and Milan Zamzal wrote @file{slovak.el}, support for
1166 editing text in Slovak language.
1167
1168 @item
1169 Taichi Kawabata wrote support for Devanagari script and the Indian
1170 languages.
1171
1172 @item
1173 Jens T.@: Berger Thielemann wrote @file{word-help.el}, which is
1174 part of the basis for @file{info-look.el}.
1175
1176 @item
1177 Spencer Thomas wrote the original @file{dabbrev.el}, providing a command
1178 which completes the partial word before point, based on other nearby
1179 words for which it is a prefix. He also wrote the original dumping
1180 support.
1181
1182 @item
1183 Jim Thompson wrote @file{ps-print.el}, which converts
1184 Emacs text to Postscript.
1185
1186 @item
1187 Tom Tromey and Chris Lindblad wrote @file{tcl.el}, a major mode for
1188 editing Tcl/Tk source files and running a Tcl interpeter as an Emacs
1189 subprocess.
1190
1191 @item
1192 Daiki Ueno wrote @file{starttls.el}, support for Transport Layer
1193 Security protocol.
1194
1195 @item
1196 Masanobu Umeda wrote:
1197
1198 @itemize @minus
1199 @item
1200 GNUS, a feature-full reader for Usenet news,
1201 @item
1202 @file{prolog.el}, a mode for editing Prolog code,
1203 @item
1204 @file{rmailsort.el}, a package for sorting messages in RMAIL folders,
1205 @item
1206 @file{metamail.el}, an interface to the Metamail program,
1207 @item
1208 @file{gnus-kill.el}, the Kill File mode for Gnus,
1209 @item
1210 @file{gnus-mh.el}, an mh-e interface for Gnus,
1211 @item
1212 @file{gnus-msg.el}, a mail and post interface for Gnus,
1213 @item
1214 @file{tcp.el}, emulation of the @code{open-network-stream} function for
1215 some Emacs configurations which lack it, and
1216 @item
1217 @file{timezone.el}, providing functions for dealing with time zones.
1218 @end itemize
1219
1220 @item
1221 Rajesh Vaidheeswarran wrote @file{whitespace.el}, a package that
1222 detects and cleans up excess whitespace in a file.
1223
1224 @item
1225 Neil W.@: Van Dyke wrote @file{webjump.el}, a ``hot links'' package.
1226
1227 @item
1228 Didier Verna contributed @file{rect.el}, a package of functions for
1229 operations on rectangle regions of text.
1230
1231 @item
1232 Ulrik Vieth implemented @file{meta-mode.el}, for editing MetaFont code.
1233
1234 @item
1235 Geoffrey Voelker wrote the Windows NT support. He also wrote
1236 @file{dos-w32.el}, functions shared by the MS-DOS and MS-Windows ports
1237 of Emacs, and @file{w32-fns.el}, MS-Windows specific support functions.
1238
1239 @item
1240 Johan Vromans wrote @file{forms.el} and its associated files, defining a
1241 mode for filling in forms, and @file{iso-acc.el}, a minor mode providing
1242 electric accent keys for text using the ISO-8859 character set.
1243
1244 @item
1245 Barry Warsaw wrote:
1246
1247 @itemize @minus
1248 @item
1249 @file{assoc.el}, a set of utility functions for working with association
1250 lists,
1251 @item
1252 @file{cc-mode.el}, a major mode for editing C, C@t{++}, and Java code,
1253 based on earlier work by Dave Detlefs, Stewart Clamen, and Richard
1254 Stallman,
1255 @item
1256 @file{elp.el}, a new profiler for Emacs Lisp programs.
1257 @item
1258 @file{man.el}, a mode for reading UNIX manual pages,
1259 @item
1260 @file{regi.el}, providing an AWK-like functionality for use in lisp
1261 programs,
1262 @item
1263 @file{reporter.el}, providing customizable bug reporting for lisp
1264 packages, and
1265 @item
1266 @file{supercite.el}, a minor mode for quoting sections of mail messages
1267 and news articles.
1268 @end itemize
1269
1270 @item
1271 Morten Welinder introduced face support into the MS-DOS port of Emacs,
1272 and also wrote:
1273
1274 @itemize @minus
1275 @item
1276 @file{desktop.el}, facilities for saving some of Emacs's state between
1277 sessions,
1278 @item
1279 @file{timer.el}, the Emacs facility to run commands at a given time or
1280 frequency, or when Emacs is idle, and its C-level support code,
1281 @item
1282 @file{pc-win.el}, the MS-DOS ``window-system'' support,
1283 @item
1284 @file{internal.el}, an ``internal terminal'' emulator for the MS-DOS
1285 port of Emacs,
1286 @item
1287 @file{arc-mode.el}, the mode for editing compressed archives,
1288 @item
1289 @file{s-region.el}, commands for setting the region using the shift key
1290 and motion commands, and
1291 @item
1292 @file{dos-fns.el}, functions for use under MS-DOS.
1293 @end itemize
1294
1295 He also helped port Emacs to MS-DOS.
1296
1297 @item
1298 Joseph Brian Wells wrote:
1299
1300 @itemize @minus
1301 @item
1302 @file{apropos.el}, a command to find commands, functions, and variables
1303 whose names contain matches for a regular expression,
1304 @item
1305 @file{resume.el}, support for processing command-line arguments after
1306 resuming a suspended Emacs job, and
1307 @item
1308 @file{mail-extr.el}, a package for extracting names and addresses from
1309 mail headers, with contributions from Jamie Zawinski.
1310 @end itemize
1311
1312 @item
1313 Rodney Whitby and Reto Zimmermann wrote @file{vhdl-mode.el}, a major
1314 mode for editing VHDL source code.
1315
1316 @item
1317 John Wiegley wrote @file{align.el}, a set of commands for aligning text
1318 according to regular-expression based rules; @file{timeclock.el}, a
1319 package for keeping track of time spent on projects;
1320 @file{pcomplete.el}, a programmable completion facility; and
1321 @code{eshell}, a command shell implemented entirely in Emacs Lisp.
1322
1323 @item
1324 Ed Wilkinson wrote @file{b2m.c}, a program to convert mail files from
1325 RMAIL format to Unix @code{mbox} format.
1326
1327 @item
1328 Mike Williams wrote @file{mouse-sel.el}, providing enhanced mouse
1329 selection, and @file{thingatpt.el}, a library of functions for finding
1330 the ``thing'' (word, line, s-expression) containing point.
1331
1332 @item
1333 Bill Wohler wrote the Emacs interface to the MH mail system.
1334
1335 @item
1336 Dale R. Worley wrote @file{emerge.el}, a package for interactively
1337 merging two versions of a file.
1338
1339 @item
1340 Francis J.@: Wright wrote @code{WoMan}, a package for browsing Unix
1341 manual pages without the @code{man} command.
1342
1343 @item
1344 Tom Wurgler wrote @file{emacs-lock.el}, which makes it harder
1345 to exit with valuable buffers unsaved.
1346
1347 @item
1348 Ilya Zakharevich and Bob Olson contributed @file{cperl-mode.el}, a major
1349 mode for editing Perl code. Ilya Zakharevich also wrote @file{tmm.el},
1350 a mode for accessing the Emacs menu bar on a text-mode terminal.
1351
1352 @item
1353 Milan Zamzal wrote @file{czech.el}, support for editing Czech text,
1354 @file{glasses.el}, a package for easier reading of source code which
1355 uses illegible identifier names such as @code{cantReadThisVariable}, and
1356 @file{tildify.el}, commands for adding hard spaces to text, @TeX{}, and
1357 SGML/HTML files.
1358
1359 @item
1360 Victor Zandy contributed @file{zone.el}, a package for people who like
1361 to zone out in front of Emacs.
1362
1363 @item
1364 Eli Zaretskii made many standard Emacs features work on MS-DOS. He also
1365 wrote @file{tty-colors.el}, which implements transparent mapping of X
1366 colors to tty colors, and (together with Kenichi Handa)
1367 @file{codepage.el}, a package for editing text encoded in DOS/Windows
1368 code pages.
1369
1370 @item
1371 Jamie Zawinski wrote:
1372
1373 @itemize @minus
1374 @item
1375 Emacs 19's optimizing byte compiler, with Hallvard Furuseth,
1376 @item
1377 much of the support for faces and X selections,
1378 @item
1379 @file{mailabbrev.el}, a package providing automatic expansion of mail
1380 aliases, and
1381 @item
1382 @file{tar-mode.el}, providing simple viewing and editing commands for
1383 tar files.
1384 @end itemize
1385
1386 @item
1387 Shenghuo Zhu wrote:
1388
1389 @itemize @minus
1390 @item
1391 @file{binhex.el}, a package for reading and writing binhex files,
1392 @item
1393 @file{mm-partial.el}, message/partial support for MIME messages,
1394 @item
1395 @file{rfc1843.el}, an HZ decoding package,
1396 @item
1397 @file{uudecode.el}, an Emacs Lisp decoder for uuencoded data,
1398 @item
1399 @file{webmail.el}, an interface to Web mail.
1400 @end itemize
1401
1402 @item
1403 Ian T. Zimmerman wrote @file{gametree.el}.
1404
1405 @item
1406 Neal Ziring and Felix S. T. Wu wrote @file{vi.el}, an emulation of the
1407 VI text editor.
1408
1409 @item
1410 Detlev Zundel wrote @file{re-builder.el}, a package for building regexps
1411 with visual feedback.
1412 @end itemize
1413
1414 Others too numerous to mention have reported and fixed bugs, and added
1415 features to many parts of Emacs. We thank them for their generosity as
1416 well.
1417
1418 This list intended to mention every contributor of a major package or
1419 feature we currently distribute; if you know of someone we have omitted,
1420 please report that as a manual bug.