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