Source

emacs / man / ack.texi

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
@c This is part of the Emacs manual.
@c Copyright (C) 1994,1995,1996,1997,1999,2000 Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
@node Acknowledgments, Screen, Concept Index, Top
@chapter Acknowledgments

Many people have contributed code included in the Free Software
Foundation's distribution of GNU Emacs.  To show our appreciation for
their public spirit, we list here, in alphabetical order, those who have
written substantial portions.

@itemize @bullet
@item
Per Abrahamsen wrote the customization buffer facilities, as well as
@file{double.el} for typing accented characters not normally available
from the keyboard, @file{xt-mouse.el} which handles mouse commands
through Xterm, and @file{cpp.el} which hides or highlights parts of C
programs according to preprocessor conditionals.

@item
Jay K. Adams wrote @file{jka-compr.el}, providing automatic
decompression and recompression for compressed files.

@item
Joe Arceneaux wrote the original text property implementation, and
implemented support for X11.

@item
Boaz Ben-Zvi wrote @file{profile.el}, to time Emacs Lisp functions.

@item
Jim Blandy wrote Emacs 19's input system, brought its configuration and
build process up to the GNU coding standards, and contributed to the
frame support and multi-face support.

@item
Terrence M. Brannon wrote @file{landmark.el}, a neural-network robot
that learns landmarks.

@item
Frank Bresz wrote @file{diff.el}, a program to display @code{diff}
output.

@item
Peter Breton implemented @file{dirtrack} which does better tracking of
directory changes in shell buffers, @file{filecache.el} which records
which directories your files are in, @file{locate.el} which interfaces
to the @code{locate} command, @file{net-utils.el}, and the ``generic
mode'' feature.

@item
Kevin Broadey wrote @file{foldout.el}, providing folding extensions to
Emacs's outline modes.

@item
Vincent Broman wrote @file{ada.el}, a mode for editing Ada code
(since replaced by @file{ada-mode.el}).

@item
David M. Brown wrote @file{array.el}, for editing arrays and other
tabular data.

@item
Bill Carpenter provided @file{feedmail.el}.

@item
Hans Chalupsky wrote @file{advice.el}, an overloading mechanism for
Emacs Lisp functions, and @file{trace.el}, a tracing facility for Emacs
Lisp.

@item
Bob Chassell wrote @file{texnfo-upd.el} and @file{makeinfo.el}, modes
and utilities for working with Texinfo files.

@item
James Clark wrote @file{sgml-mode.el}, a mode for editing SGML
documents, and contributed to Emacs's dumping procedures.

@item
Mike Clarkson wrote @file{edt.el}, an emulation of DEC's EDT editor.

@item
Glynn Clements provided @file{gamegrid.el} and a couple of games that
use it, Snake and Tetris.

@item
Andrew Csillag wrote M4 mode (@file{m4-mode.el}).

@item
Doug Cutting and Jamie Zawinski wrote @file{disass.el}, a disassembler
for compiled Emacs Lisp code.

@item
Michael DeCorte wrote @file{emacs.csh}, a C-shell script that starts a
new Emacs job, or restarts a paused Emacs if one exists.

@item
Gary Delp wrote @file{mailpost.el}, an interface between RMAIL and the
@file{/usr/uci/post} mailer.

@item
Matthieu Devin wrote @file{delsel.el}, a package to make newly-typed
text replace the current selection.

@item
Eric Ding contributed @file{goto-addr.el}, 

@item
Carsten Dominik wrote @file{reftex.el}, a package for setting up
labels and cross-references for La@TeX{}.

@item
Scott Draves wrote @file{tq.el}, help functions for maintaining
transaction queues between Emacs and its subprocesses.

@item
Viktor Dukhovni wrote support for dumping under SunOS version 4.

@item
John Eaton co-wrote Octave mode (@file{octave.el} and related files).

@item
Rolf Ebert co-wrote Ada mode (@file{ada-mode.el}).

@item
Stephen Eglen implemented @file{mspools.el}, for use with Procmail,
which tells you which mail folders have mail waiting in them, and
@file{iswitchb.el}, a feature for incremental reading and completion of
buffer names.

@item
@c iftex
Torbj@"orn
@c end iftex
@c ifinfo
@c Torbjorn
@c end ifinfo
Einarsson contributed F90 mode (@file{f90.el}).

@item
Tsugutomo Enami co-wrote the support for international character sets.

@item
Hans Henrik Eriksen wrote @file{simula.el}, a mode for editing SIMULA 87
code.

@item
Michael Ernst wrote @file{reposition.el}, a command for recentering a
function's source code and preceding comment on the screen.

@item
Ata Etemadi wrote @file{cdl.el}, functions for working with Common Data
Language source code.

@item
Frederick Farnback implemented @file{morse.el}, which converts text to
morse code.

@item
Fred Fish wrote the support for dumping COFF executable files.

@item
Karl Fogel wrote:
@itemize @bullet
@item
@file{bookmark.el}, for creating named placeholders, saving them and
jumping to them later,
@item
@file{mail-hist.el}, a history mechanism for outgoing mail messages, and
@item
@file{saveplace.el}, for preserving point's location in files between
editing sessions.
@end itemize

@item
Gary Foster wrote the emulation for CRiSP: @file{crisp.el} and
@file{scroll-lock.el}.

@item
Noah Friedman wrote @file{rlogin.el}, an interface to Rlogin, and
@file{type-break.el}, which reminds you to take periodic breaks from
typing.  With Roland McGrath, he wrote @file{rsz-mini.el}, a minor mode
to automatically resize the minibuffer to fit the text it contains.

@item
Keith Gabryelski wrote @file{hexl.el}, a mode for editing binary files.

@item
Kevin Gallagher rewrote and enhanced the EDT emulation, and wrote
@file{flow-ctrl.el}, a package for coping with unsuppressible XON/XOFF
flow control.

@item
Kevin Gallo added multiple-frame support for Windows NT.

@item
Howard Gayle wrote:
@itemize @bullet
@item
the C and lisp code for display tables and case tables,
@item
@file{rot13.el}, a command to display the plaintext form of a buffer
encoded with the Caesar cipher,
@item
much of the support for the ISO-8859 European character set (which
includes @file{iso-ascii.el}, @file{iso-insert.el}, @file{iso-swed.el},
@file{iso-syntax.el}, @file{iso-transl.el}, and @file{swedish.el}), and
@item
@file{vt100-led.el}, a package for controlling the LED's on
VT100-compatible terminals.
@end itemize

@item
Stephen Gildea made the Emacs quick reference card.

@item
David Gillespie wrote:
@itemize @bullet
@item
Emacs 19's Common Lisp compatibility packages, replacing the old package
by Cesar Augusto Quiroz Gonzalez,
@item
@file{complete.el}, a partial completion mechanism, and
@item
@file{edmacro.el}, a package for editing keyboard macros.
@end itemize

@item
Bob Glickstein contributed the @file{sregex.el} feature.

@item
Boris Goldowsky wrote @file{avoid.el}, a package to keep the mouse
cursor out of the way of the text cursor; @file{shadowfile.el}, a
package for keeping identical copies of files in more than one place;
@file{enriched.el}, a package for saving text properties in files;
and @file{facemenu.el}, a package for specifying faces.

@item
Michelangelo Grigni wrote @file{ffap.el} which visits a file,
taking the file name from the buffer.

@item
Odd Gripenstam wrote @file{dcl-mode.el}.

@item
Michael Gschwind wrote @file{iso-cvt.el}, a package to convert between
the ISO 8859-1 character set and the notations for non-@code{ASCII}
characters used by @TeX{} and net tradition.

@item
Henry Guillaume wrote @file{find-file.el}, a package to visit files
related to the currently visited file.

@item
Doug Gwyn wrote the portable @code{alloca} implementation.

@item
Ken'ichi Handa implemented most of the support for international
character sets.

@item
Chris Hanson wrote @file{netuname.el}, a package to use HP-UX's Remote
File Access facility from Emacs.

@item
K. Shane Hartman wrote:
@itemize @bullet
@item
@file{chistory.el} and @file{echistory.el}, packages for browsing
command history lists,
@item
@file{electric.el} and @file{helper.el}, providing an alternative
command loop and appropriate help facilities,
@item
@file{emacsbug.el}, a package for reporting Emacs bugs,
@item
@file{picture.el}, a mode for editing ASCII pictures, and
@item
@file{view.el}, a package for perusing files and buffers without editing
them.
@end itemize

@item
John Heidemann wrote @file{mouse-copy.el} and @file{mouse-drag.el},
which provide alternative mouse-based editing and scrolling features.

@item
Markus Heritsch co-wrote Ada mode (@file{ada-mode.el}).

@item
Karl Heuer wrote the original blessmail script, implemented the
@code{intangible} text property, and rearranged the structure of the
@code{Lisp_Object} type to allow for more data bits.

@item
Manabu Higashida ported Emacs to the MS-DOS operating system.

@item
Anders Holst wrote @file{hippie-exp.el}, a versatile completion and
expansion package.

@item
Kurt Hornik co-wrote Octave mode (@file{octave.el} and related files).

@item
Tom Houlder wrote @file{mantemp.el}, which generates manual C++ template
instantiations.

@item
Lars Ingebrigtsen did a major redesign of the GNUS newsreader.

@item
Andrew Innes contributed extensively to the Windows NT support.

@item
Kyle Jones wrote @file{life.el}, a package to play Conway's ``life'' game,
and @file{mldrag.el}, a package which allows the user to resize windows
by dragging mode lines and vertical window separators with the mouse.

@item
Tomoji Kagatani implemented @file{smtpmail.el}, used for sending out
mail with SMTP.

@item
David Kaufman wrote @file{yow.c}, an essential utility program for the
hopelessly pinheaded.

@item
Henry Kautz wrote @file{bib-mode.el}, a mode for maintaining
bibliography databases compatible with @code{refer} (the @code{troff}
version) and @code{lookbib}, and @file{refbib.el}, a package to convert
those databases to the format used by the LaTeX text formatting package.

@item
Howard Kaye wrote @file{sort.el}, commands to sort text in Emacs
buffers.

@item
Michael Kifer wrote @file{ediff.el}, an interactive interface to the
@code{diff} and @code{patch} programs, and Viper, the newest emulation
for VI.

@item
Richard King wrote the first version of @file{userlock.el} and
@file{filelock.c}, which provide simple support for multiple users
editing the same file.
@c We're not using his backquote.el any more.

@item
Larry K. Kolodney wrote @file{cvtmail.c}, a program to convert the mail
directories used by Gosling Emacs into RMAIL format.

@item
Robert Krawitz wrote the original @file{xmenu.c}, part of Emacs's pop-up
menu support.

@item
Sebastian Kremer wrote Emacs 19's @code{dired-mode}, with contributions
by Lawrence R. Dodd.

@item
Geoff Kuenning wrote Emacs 19's @file{ispell.el}, based on work by Ken
Stevens and others.

@item
David K@ringaccent{a}gedal wrote @file{tempo.el}, providing support for
easy insertion of boilerplate text and other common constructions.

@item
Daniel LaLiberte wrote:
@itemize @bullet
@item
@file{edebug.el}, a source-level debugger for Emacs Lisp,
@item
@file{cl-specs.el}, specifications to help @code{edebug} debug code
written using David Gillespie's Common Lisp support,
@item
@file{cust-print.el}, a customizable package for printing lisp objects,
@item
@file{eval-reg.el}, a re-implementation of @code{eval-region} in Emacs
Lisp, and
@item
@file{isearch.el}, Emacs 19's incremental search minor mode.
@end itemize

@item
James R. Larus wrote @file{mh-e.el}, an interface to the MH mail system.

@item
Frederic Lepied contributed @file{expand.el}, which uses the abbrev
mechanism for inserting programming constructs.

@item
Lars Lindberg wrote @file{msb.el}, which provides more flexible menus
for buffer selection, and rewrote @file{dabbrev.el}.

@item
Eric Ludlam wrote the Speedbar package and @file{checkdoc.el}.

@item
Neil M. Mager wrote @file{appt.el}, functions to notify users of their
appointments.  It finds appointments recorded in the diary files
generated by Edward M. Reingold's @code{calendar} package.

@item
Ken Manheimer wrote @file{allout.el}, a mode for manipulating and
formatting outlines, and @file{icomplete.el}, which provides incremental
completion feedback in the minibuffer.

@item
Bill Mann wrote @file{perl-mode.el}, a mode for editing Perl code.

@item
Brian Marick and Daniel LaLiberte wrote @file{hideif.el}, support for
hiding selected code within C @code{#ifdef} clauses.

@item
Simon Marshall wrote:
@itemize @bullet
@item
@file{fast-lock.el}, which caches the face data computed by Font Lock mode,
@item
@file{lazy-lock.el}, which delays fontification in Font Lock mode
until text is actually displayed, and
@item
@file{regexp-opt.el}, which generates a regular expression from a list
of strings.
@end itemize

@item
Bengt Martensson, Mark Shapiro, Mike Newton, Aaron Larson, and Stefan
Schoef, wrote @file{bibtex.el}, a mode for editing Bib@TeX{}
bibliography files.
 
@item
Charlie Martin wrote @file{autoinsert.el}, which provides automatic
mode-sensitive insertion of text into new files.

@item
Thomas May wrote @file{blackbox.el}, a version of the traditional
blackbox game.

@item
Roland McGrath wrote:
@itemize @bullet
@item
@file{compile.el}, a package for running compilations in a buffer, and
then visiting the locations reported in error messages,
@item
@file{etags.el}, a package for jumping to function definitions and
searching or replacing in all the files mentioned in a @file{TAGS} file,
@item
@file{find-dired.el}, for using @code{dired} commands on output from the
@code{find} program, with Sebastian Kremer,
@item
@file{map-ynp.el}, a general purpose boolean question-asker,
@item
@file{autoload.el}, providing semi-automatic maintenance of autoload
files, and
@item
@file{upd-copyr.el}, providing semi-automatic maintenance of copyright
notices in source code.
@end itemize

@item
David Megginson wrote @file{derived.el}, which allows one to define new
major modes by inheriting key bindings and commands from existing major
modes.

@item
Wayne Mesard wrote @file{hscroll.el} which does horizontal scrolling
automatically.

@item
Richard Mlynarik wrote:
@itemize @bullet
@item
@file{cl-indent.el}, a package for indenting Common Lisp code,
@item
@file{ebuff-menu.el}, an ``electric'' browser for buffer listings,
@item
@file{ehelp.el}, bindings for browsing help screens,
@item
@file{rfc822.el}, a parser for E-mail addresses in the RFC-822 format,
used in mail messages and news articles,
@item
@file{terminal.el}, a terminal emulator for Emacs subprocesses, and 
@item
@file{yow.el}, an essential utility (try @kbd{M-x yow}).
@end itemize

@item
Gerd Moellmann wrote the new display engine for Emacs 21, the
@code{ebrowse} C@t{++} browser, and @file{jit-lock.el},
@file{tooltip.el}, and @file{authors.el} packages.

@item
Keith Moore wrote @file{aixcc.lex}, a pre-processor designed to help
Emacs parse the error messages produced by the AIX C compiler.

@item
Erik Naggum wrote the time-conversion functions, and has tested the
latest source code daily.

@item
Thomas Neumann and Eric Raymond wrote @file{makefile.el}, a mode for
editing makefiles.

@item
Jurgen Nickelsen wrote @file{ws-mode.el}, providing WordStar emulation.

@item
Jeff Norden wrote @file{kermit.el}, a package to help the Kermit
dialup communications program run comfortably in an Emacs shell buffer.

@item
Andrew Norman wrote @file{ange-ftp.el}, providing transparent FTP support.

@item
Jeff Peck wrote:
@itemize @bullet
@item
@file{emacstool.c}, support for running Emacs under SunView/Sun Windows,
@item
@file{sun-curs.el}, cursor definitions for Sun Windows, and 
@item
@file{sun-fns.el}, providing mouse support for Sun Windows.
@end itemize

@item
Damon Anton Permezel wrote @file{hanoi.el}, an animated demonstration of
the ``Towers of Hanoi'' puzzle.

@item
Jens Petersen wrote @file{find-func.el}, which makes it easy to find
the source code for an Emacs Lisp function or variable.

@item
Daniel Pfeiffer wrote:
@itemize @bullet
@item
@file{executable.el}
@item
@file{sh-script.el}, a mode for editing shell scripts,
@item
@file{skeleton.el}, implementing a concise language for writing
statement skeletons, and
@item
@file{two-column.el}, a minor mode for simultaneous two-column editing.
@end itemize

@item
Fred Pierresteguy and Paul Reilly made Emacs work with X Toolkit
widgets.

@item
Christian Plaunt wrote @file{soundex.el}, an implementation of the
Soundex algorithm for comparing English words by their pronunciation.

@item
Francesco A. Potorti wrote @file{cmacexp.el}, providing a command which
runs the C preprocessor on a region of a file and displays the results.

@item
Michael D. Prange and Steven A. Wood wrote @file{fortran.el}, a mode for
editing FORTRAN code.
@c We're not distributing his tex-mode.el anymore; we're using Ed Reingold's.

@item
Ashwin Ram wrote @file{refer.el}, commands to look up references in
bibliography files by keyword.

@item
Eric S. Raymond wrote:
@itemize @bullet
@item
@file{vc.el}, an interface to the RCS and SCCS source code version
control systems, with Paul Eggert,
@item
@file{gud.el}, a package for running source-level debuggers like GDB
and SDB in Emacs,
@item
@file{asm-mode.el}, a mode for editing assembly language code,
@item
@file{cookie1.el}, support for ``fortune-cookie'' programs like
@file{yow.el} and @file{spook.el},
@item
@file{finder.el}, a package for finding Emacs Lisp packages by keyword
and topic,
@item
@file{lisp-mnt.el}, functions for working with the special headers used
in Emacs Lisp library files, and
@item
code to set and make use of the @code{load-history} lisp variable, which
records the source file from which each lisp function loaded into Emacs
came.
@end itemize

@item
Edward M. Reingold wrote the extensive calendar and diary support (try
@kbd{M-x calendar}), with contributions from Stewart Clamen, Paul
Eggert, and Lara Rios.  Andy Oram contributed to its documentation.
Reingold has also contributed to @file{tex-mode.el}, a mode for editing
@TeX{} files, as have William F. Schelter, Dick King, Stephen Gildea,
Michael Prange, and Jacob Gore.

@item
Rob Riepel contributed @file{tpu-edt.el} and its associated files,
providing an emulation of the VMS TPU text editor emulating the VMS EDT
editor, and @file{vt-control.el}, providing some control functions for
the DEC VT line of terminals.

@item
Roland B. Roberts contributed much of the VMS support distributed with
Emacs 19, along with Joseph M. Kelsey, and @file{vms-pmail.el}, support
for using Emacs within VMS MAIL.

@item
John Robinson wrote @file{bg-mouse.el}, support for the mouse on the BBN
Bitgraph terminal.

@item
Danny Roozendaal implemented @file{handwrite.el}, which converts text
into ``handwriting.''

@item
William Rosenblatt wrote @file{float.el}, implementing a floating-point
numeric type using Lisp cons cells and integers.

@item
Guillermo J. Rozas wrote @file{scheme.el}, a mode for editing Scheme
code, and @file{fakemail.c}, an interface to the System V mailer.

@item
Ivar Rummelhoff provided @file{winner.el}, which records
recent window configurations so you can move back to them.

@item
Wolfgang Rupprecht contributed Emacs 19's floating-point support
(including @file{float-sup.el} and @file{floatfns.c}), and
@file{sup-mouse.el}, support for the Supdup mouse on lisp machines.

@item
James B. Salem and Brewster Kahle wrote @file{completion.el}, providing
dynamic word completion.

@item
Masahiko Sato wrote @file{vip.el}, an emulation of the VI editor.

@item
William Schelter wrote @file{telnet.el}, support for @code{telnet}
sessions within Emacs.

@item
Ralph Schleicher contributed @file{battery.el}, a package for displaying
laptop computer battery status, and @file{info-look.el}, a package for
looking up Info documentation for symbols in the buffer.

@item
Gregor Schmid wrote @file{tcl.el}, a mode for editing Tcl/Tk scripts.

@item
Michael Schmidt and Tom Perrine wrote @file{modula2.el}, a mode for
editing Modula-2 code, based on work by Mick Jordan and Peter Robinson.

@item
Ronald S. Schnell wrote @file{dunnet.el}, a text adventure game.

@item
Philippe Schnoebelen wrote @file{gomoku.el}, a Go Moku game played
against Emacs, and @file{mpuz.el}, a multiplication puzzle.

@item
Randal Schwartz wrote @file{pp.el}, a pretty-printer for lisp objects.

@item
Manuel Serrano contributed the Flyspell package that does spell checking
as you type.

@item
Stanislav Shalunov wrote @file{uce.el}, for responding to unsolicited
commercial email.

@item
Richard Sharman contributed @file{hilit-chg.el}, which uses colors
to inclidate recent editing changes.

@item
Olin Shivers wrote:
@itemize @bullet
@item
@file{comint.el}, a library for modes running interactive command-line-
oriented subprocesses,
@item
@file{cmuscheme.el}, for running inferior Scheme processes,
@item
@file{inf-lisp.el}, for running inferior Lisp process, and
@item
@file{shell.el}, for running inferior shells.
@end itemize

@item
Espen Skoglund wrote @file{pascal.el}, a mode for editing Pascal code.

@item
Rick Sladkey wrote @file{backquote.el}, a lisp macro for creating
mostly-constant data.

@item
Lynn Slater wrote @file{help-macro.el}, a macro for writing interactive
help for key bindings.

@item
Chris Smith wrote @file{icon.el}, a mode for editing Icon code.

@item
David Smith wrote @file{ielm.el}, a mode for interacting with the Emacs
Lisp interpreter as a subprocess.

@item
Paul D. Smith wrote @file{snmp-mode.el}.

@item
William Sommerfeld wrote @file{scribe.el}, a mode for editing Scribe
files, and @file{server.el}, a package allowing programs to send files
to an extant Emacs job to be edited.

@item
Michael Staats wrote @file{pc-select.el}, which rebinds keys for
selecting regions to follow many other systems.

@item
Ake Stenhoff and Lars Lindberg wrote @file{imenu.el}, a framework for
browsing indices made from buffer contents.

@item
Peter Stephenson contributed @file{vcursor.el}, which implements a
``virtual cursor'' that you can move with the keyboard and use for
copying text.

@item
Sam Steingold wrote @file{gulp.el} and @file{midnight.el}.

@item
Jonathan Stigelman wrote @file{hilit19.el}, a package providing
automatic highlighting in source code buffers, mail readers, and other
contexts.

@item
Steve Strassman did not write @file{spook.el}, and even if he did, he
really didn't mean for you to use it in an anarchistic way.

@item
Jens T. Berger Thielemann wrote @file{word-help.el}, which is
part of the basis for @file{info-look.el}.

@item
Spencer Thomas wrote the original @file{dabbrev.el}, providing a command
which completes the partial word before point, based on other nearby
words for which it is a prefix.  He also wrote the original dumping
support.

@item
Jim Thompson wrote @file{ps-print.el}, which converts
Emacs text to Postscript.

@item
Masanobu Umeda wrote:
@itemize @bullet
@item
GNUS, a featureful reader for Usenet news,
@item
@file{prolog.el}, a mode for editing Prolog code,
@item
@file{rmailsort.el}, a package for sorting messages in RMAIL folders,
@item
@file{metamail.el}, an interface to the Metamail program,
@item
@file{tcp.el}, emulation of the @code{open-network-stream} function for
some Emacs configurations which lack it, and
@item
@file{timezone.el}, providing functions for dealing with time zones.
@end itemize

@item
Neil W. Van Dyke wrote @file{webjump.el}, a ``hot links'' package.

@item
Ulrik Vieth implemented @file{meta-mode.el}, for editing MetaFont code.

@item
Geoffrey Voelker wrote the Windows NT support.

@item
Johan Vromans wrote @file{forms.el} and its associated files, defining a
mode for filling in forms, and @file{iso-acc.el}, a minor mode providing
electric accent keys for text using the ISO-8859 character set.

@item
Barry Warsaw wrote:
@itemize @bullet
@item
@file{assoc.el}, a set of utility functions for working with association
lists,
@item
@file{cc-mode.el}, a major mode for editing C and C++ code, based on
earlier work by Dave Detlefs, Stewart Clamen, and Richard Stallman,
@item
@file{elp.el}, a new profiler for Emacs Lisp programs.
@item
@file{man.el}, a mode for reading UNIX manual pages,
@item
@file{regi.el}, providing an AWK-like control structure for
use in lisp programs, and
@item
@file{reporter.el}, providing customizable bug reporting for lisp
packages.
@item
@file{supercite.el}, a minor mode for quoting sections of mail messages
and news articles,
@end itemize

@item
Morten Welinder introduced face support into the MS-DOS port of Emacs,
and also wrote:
@itemize @bullet
@item
@file{desktop.el}, facilities for saving some of Emacs's state between
sessions,
@item
@file{timer.el}, the Emacs facility to run commands at a given time or
frequency, or when Emacs is idle,
@item
@file{pc-win.el}, the MS-DOS ``window-system'' support,
@item
@file{arc-mode.el}, the mode for editing compressed archives,
@item
@file{s-region.el}, commands for setting the region using the shift key
and motion commands, and
@item
@file{dos-fns.el}, functions for use under MS-DOS.
@end itemize

He also helped port Emacs to MS-DOS.

@item
Joseph Brian Wells wrote:
@itemize @bullet
@item
@file{apropos.el}, a command to find commands, functions, and variables
whose names contain matches for a regular expression,
@item
@file{resume.el}, support for processing command-line arguments after
resuming a suspended Emacs job, and
@item
@file{mail-extr.el}, a package for extracting names and addresses from
mail headers, with contributions from Jamie Zawinski.
@end itemize

@item
Rodney Whitby and Reto Zimmermann wrote @file{vhdl-mode.el}.

@item
Ed Wilkinson wrote @file{b2m.c}, a program to convert mail files from
RMAIL format to Unix @code{mbox} format.

@item
Mike Williams wrote @file{mouse-sel.el}, providing enhanced mouse
selection, and @file{thingatpt.el}, a library of functions for finding
the ``thing'' (word, line, s-expression) containing point.

@item
Dale R. Worley wrote @file{emerge.el}, a package for interactively
merging two versions of a file.

@item
Tom Wurgler wrote @file{emacs-lock.el}, which makes it harder
to exit with valuable buffers unsaved.

@item
Eli Zaretskii made many standard Emacs features work on MS-DOS.  He also
wrote @file{tty-colors.el}, which implements transparent mapping of X
colors to tty colors, and (together with Kenichi Handa)
@file{codepage.el}, a package for editing text encoded in DOS/Windows
code pages.

@item
Jamie Zawinski wrote:
@itemize @bullet
@item
Emacs 19's optimizing byte compiler, with Hallvard Furuseth,
@item
much of the support for faces and X selections,
@item
@file{mailabbrev.el}, a package providing automatic expansion of mail
aliases, and
@item
@file{tar-mode.el}, providing simple viewing and editing commands for
tar files.
@end itemize

@item
Ian T. Zimmerman wrote @file{gametree.el}.

@item
Neal Ziring and Felix S. T. Wu wrote @file{vi.el}, an emulation of the
VI text editor.

@item
John Wiegley wrote @file{align.el}, a set of commands for aligning
text according to regular-expression based rules.

@item
INOUE Seiichiro improved Emacs' XIM support.  Thanks to HORIKAWA Hisashi
for suggestions.
@end itemize

Others too numerous to mention have reported and fixed bugs, and added
features to many parts of Emacs.  We thank them for their generosity as
well.

This list intended to mention every contributor of a major package or
feature we currently distribute; if you know of someone we have omitted,
please report that as a manual bug.
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.