Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files


  • Loading branch information...
commit ebc1f341e5821de7109cd3b3d89c455f5e11f874 1 parent 6b8ad34
@loveshack loveshack authored
@@ -0,0 +1,558 @@
+!1 This file is largely machine-readable; it should be easy to do
+!2 simple transformations on it mechanically, e.g. to combine lines
+!3 by the same author. The parenthesized token is always "(changed)"
+!4 or "(wrote)" or occasionally "(co-wrote)". The file name is
+!5 sometimes replaced or followed by a comment in [brackets].
+!6 Two authors, K�gedal (K{a-ring}gedal) and Potort�
+!7 (Potort{i-grave}), have non-ASCII letters in their names.
+Abrahamsen, Per (changed) lisp/easymenu.el
+Abrahamsen, Per (changed) lisp/frame.el
+Abrahamsen, Per (changed) src/window.c
+Abrahamsen, Per (wrote) lisp/double.el
+Adams, Jay K. (wrote) lisp/jka-compr.el
+Arceneax, Joe (changed) lisp/term/x-win.el
+Arceneax, Joe (changed) src/xfns.c
+Arceneax, Joe (changed) src/xselect.c
+Arceneax, Joe (changed) src/xterm.c
+Arceneax, Joe (changed) src/xterm.h
+Arceneax, Joe (wrote) src/xrdb.c
+Ben-Gershon, Michael (changed) src/unexec.c
+Ben-Gershon, Michael (wrote) src/m/acorn.h
+Ben-Zvi, Boaz (wrote) lisp/profile.el
+Berry, Karl (changed) src/s/isc2-2.h
+Blandy, Jim (changed) lisp/add-log.el
+Blitz Product Development Corporation (wrote) lisp/ispell.el
+Bothner, Per (changed) src/process.c
+Bothner, Per (changed) src/sysdep.c
+Bothner, Per (wrote) lisp/term.el
+Bresz, Frank (wrote) lisp/diff.el
+Broadey, Kevin (wrote) lisp/foldout.el
+Brown, David M. (wrote) lisp/array.el
+Buhrman, Jan-Hein (changed) lisp/env.el
+Burton, Bill (wrote) src/m/sequent-ptx.h
+Burton, Bill (wrote) src/s/ptx.h
+Byers, Gary (changed) src/s/xenix.h
+Carey, Shawn M. (wrote) src/s/freebsd.h
+Cederqvist, Per (changed) lisp/vc-hooks.el
+Cederqvist, Per (changed) lisp/vc.el
+Chalupsky, Hans (changed) lisp/bytecomp.el
+Chalupsky, Hans (wrote) lisp/advice.el
+Chalupsky, Hans (wrote) lisp/trace.el
+Chassell, Robert J. (wrote) lisp/page-ext.el
+Clamen, Stewart (wrote) lisp/cal-mayan.el
+Clark, James (changed) src/unexec.c
+Clark, James (wrote) lisp/sgml-mode.el
+Cutting, Doug (wrote) lisp/disass.el
+Decker, Eric (changed) src/m/hp9000s800.h
+Decker, Eric (changed) src/s/hpux.h
+Decker, Eric (changed) src/sysdep.c
+Dodd, Lawrence R. (changed) lisp/fortran.el
+Dodd, Lawrence R. (changed) lisp/info.el
+Dodd, Lawrence R. (changed) lisp/ispell4.el
+Dodd, Lawrence R. (co-wrote) lisp/dired-x.el
+Draves, Scot (wrote) lisp/tq.el
+Dukhovni, Viktor (wrote) src/unexsunos4.c
+Dutt, G. Dinesh (changed) lisp/etags.el
+Dwork, Jeff (changed) lisp/ehelp.el
+Eggert, Paul (changed)
+Eggert, Paul (changed) lib-src/rcs-checkin
+Eggert, Paul (changed) lisp/calendar.el
+Eggert, Paul (changed) lisp/gnus.el
+Eggert, Paul (changed) lisp/gnuspost.el
+Eggert, Paul (changed) lisp/timezone.el
+Eggert, Paul (changed) lisp/vc-hooks.el
+Eggert, Paul (changed) lisp/vc.el
+Eggert, Paul (changed) src/callproc.c
+Eggert, Paul (changed) src/cmds.c
+Eggert, Paul (changed) src/
+Eggert, Paul (changed) src/editfns.c
+Eggert, Paul (changed) src/editfns.c
+Eggert, Paul (changed) src/floatfns.c
+Eggert, Paul (changed) src/systime.h
+Eggert, Paul (changed) src/uaf.h
+Eggert, Paul (wrote) lib-src/rcs2log
+Eggert, Paul (wrote) lib-src/vcdiff
+Eggert, Paul (wrote) lisp/cal-dst.el
+Eriksen, Hans Henrik (wrote) lisp/simula.el
+Ernst, Michael (changed) lisp/dired.el
+Ernst, Michael (changed) lisp/fill.el
+Ernst, Michael (changed) lisp/rmailsum.el
+Ernst, Michael (wrote) lisp/reposition.el
+Fish, Frederic N. III (changed) src/unexec.c
+Fleehart, Tim (co-wrote) src/makefile.nt
+Fogel, Karl (changed) src/editfns.c
+Fogel, Karl (wrote) lisp/bookmark.el
+Fogel, Karl (wrote) lisp/mail-hist.el
+Fogel, Karl (wrote) lisp/saveplace.el
+Friedman, Noah (changed) lisp/timer.el
+Friedman, Noah (wrote) lisp/rlogin.el
+Friedman, Noah (wrote) lisp/rsz-mini.el
+Friedman, Noah (wrote) lisp/type-break.el
+Gabryelski, Keith (wrote) lib-src/hexl.c
+Gabryelski, Keith (wrote) lisp/hexl-mode.el
+Gallagher, Kevin (wrote) lisp/edt.el
+Gallagher, Kevin (wrote) lisp/flow-ctrl.el
+Gayle, Howard (wrote) lisp/case-table.el
+Gayle, Howard (wrote) lisp/disp-table.el
+Gayle, Howard (wrote) lisp/iso-ascii.el
+Gayle, Howard (wrote) lisp/iso-insert.el
+Gayle, Howard (wrote) lisp/iso-swed.el
+Gayle, Howard (wrote) lisp/iso-syntax.el
+Gayle, Howard (wrote) lisp/iso-transl.el
+Gayle, Howard (wrote) lisp/swedish.el
+Gayle, Howard (wrote) src/casetab.c
+Gildea, Stephen (changed) lisp/tex-mode.el
+Gildea, Stephen (wrote) etc/refcard.tex
+Gildea, Stephen (wrote) lisp/mh-comp.el
+Gildea, Stephen (wrote) lisp/mh-e.el
+Gildea, Stephen (wrote) lisp/mh-funcs.el
+Gildea, Stephen (wrote) lisp/mh-mime.el
+Gildea, Stephen (wrote) lisp/mh-pick.el
+Gildea, Stephen (wrote) lisp/mh-seq.el
+Gildea, Stephen (wrote) lisp/mh-utils.el
+Gildea, Stephen (wrote) lisp/tex-mode.el
+Gildea, Stephen (wrote) lisp/time-stamp.el
+Gillespie, David (wrote) lisp/cl-compat.el
+Gillespie, David (wrote) lisp/cl-extra.el
+Gillespie, David (wrote) lisp/cl-macs.el
+Gillespie, David (wrote) lisp/cl-seq.el
+Gillespie, David (wrote) lisp/cl.el
+Gillespie, David (wrote) lisp/complete.el
+Gillespie, David (wrote) lisp/edmacro.el
+Gillespie, David (wrote) man/cl.texinfo
+Goldowsky, Boris (changed) lisp/fill.el
+Goldowsky, Boris (changed) lisp/indent.el
+Goldowsky, Boris (changed) lisp/paragraphs.el
+Goldowsky, Boris (changed) lisp/simple.el
+Goldowsky, Boris (changed) lisp/tex-mode.el
+Goldowsky, Boris (changed) src/cmds.c
+Goldowsky, Boris (changed) src/fileio.c
+Goldowsky, Boris (changed) src/xfaces.c
+Goldowsky, Boris (wrote) lisp/avoid.el
+Goldowsky, Boris (wrote) lisp/enriched.el
+Goldowsky, Boris (wrote) lisp/facemenu.el
+Goldowsky, Boris (wrote) lisp/shadowfile.el
+Grabowski, John (changed) src/xfns.c
+Greiner, Kevin J. (changed) lisp/gud.el
+Gschwind, Michael (wrote) lisp/iso-cvt.el
+Hageman, Tom (changed) lib-src/etags.c
+Hartman, K. Shane (changed) lisp/rmail.el
+Hartman, K. Shane (changed) lisp/rmailedit.el
+Hartman, K. Shane (changed) lisp/rmailsum.el
+Hartman, K. Shane (wrote) lisp/chistory.el
+Hartman, K. Shane (wrote) lisp/echistory.el
+Hartman, K. Shane (wrote) lisp/electric.el
+Hartman, K. Shane (wrote) lisp/emacsbug.el
+Hartman, K. Shane (wrote) lisp/helper.el
+Hartman, K. Shane (wrote) lisp/mim-mode.el
+Hartman, K. Shane (wrote) lisp/mim-syntax.el
+Hartman, K. Shane (wrote) lisp/picture.el
+Hartman, K. Shane (wrote) lisp/view.el
+Heuer, Karl (changed) [miscellaneous changes throughout]
+Hewlett-Packard (changed) lib-src/emacsclient.c
+Hewlett-Packard (changed) lib-src/emacsserver.c
+Hewlett-Packard (changed) lisp/server.el
+Hewlett-Packard (changed) src/keyboard.c
+Holst, Anders (wrote) lisp/hippie-exp.el
+Horsley, Thomas (changed) src/sysdep.c
+Horsley, Thomas (wrote) src/s/cxux.h
+Horsley, Thomas (wrote) src/s/cxux7.h
+Indiana University Foundation (changed) src/buffer.c
+Indiana University Foundation (changed) src/buffer.h
+Indiana University Foundation (changed) src/indent.c
+Indiana University Foundation (changed) src/search.c
+Indiana University Foundation (changed) src/xdisp.c
+Indiana University Foundation (wrote) src/region-cache.c
+Indiana University Foundation (wrote) src/region-cache.h
+Ingebrigtsen, Lars Magne (wrote) lisp/gnus-uu.el
+International Business Machines (changed) src/emacs.c
+International Business Machines (changed) src/fileio.c
+International Business Machines (changed) src/m/ibmrt.h
+International Business Machines (changed) src/process.c
+International Business Machines (changed) src/sysdep.c
+International Business Machines (changed) src/unexec.c
+International Business Machines (wrote) src/m/ibmrt-aix.h
+Ishikawa, Chiaki (changed) src/m/aviion.h
+Ishikawa, Chiaki (changed) src/s/dgux.h
+Johnson, Michael K. (changed)
+Johnson, Michael K. (changed) src/emacs.c
+Johnson, Michael K. (changed) src/m/intel386.h
+Johnson, Michael K. (changed) src/mem-limits.h
+Johnson, Michael K. (changed) src/process.c
+Johnson, Michael K. (changed) src/s/template.h
+Johnson, Michael K. (changed) src/sysdep.c
+Johnson, Michael K. (changed) src/syssignal.h
+Johnson, Michael K. (changed) src/systty.h
+Johnson, Michael K. (changed) src/unexec.c
+Johnson, Michael K. (changed) src/ymakefile
+Johnson, Michael K. (wrote) src/s/linux.h
+Jones, Kyle E. (wrote) lisp/life.el
+Jones, Kyle E. (wrote) lisp/mldrag.el
+Kamens, Jonathan I. (changed) lisp/rmail.el
+Kamens, Jonathan I. (changed) lisp/rmailout.el
+Kamens, Jonathan I. (changed) lisp/vc.el
+Kautz, Henry (wrote) lisp/bib-mode.el
+Kautz, Henry (wrote) lisp/refbib.el
+Kaye, Howard (wrote) lisp/sort.el
+Kelsey, Joseph M. (changed) src/fileio.c
+Kelsey, Joseph M. (changed) src/vms-pwd.h
+Kelsey, Joseph M. (changed) src/vmsfns.c
+Kelsey, Joseph M. (wrote) src/dir.h
+Kelsey, Joseph M. (wrote) src/uaf.h
+Kendall, Sam (changed) lib-src/etags.c
+Kendall, Sam (changed) lisp/etags.el
+Kifer, Michael (changed) lisp/appt.el
+Kifer, Michael (wrote) lisp/ediff.el
+Kifer, Michael (wrote) lisp/viper.el [under the name vip19]
+King, Richard (changed) lisp/rnews.el
+King, Richard (changed) lisp/rnewspost.el
+King, Richard (changed) src/cmds.c
+King, Richard (changed) src/search.c
+King, Richard (wrote) lisp/backquote.el
+King, Richard (wrote) lisp/userlock.el
+King, Richard (wrote) src/filelock.c
+Kolodney, Larry K. (wrote) lib-src/cvtmail.c
+Krawitz, Robert (wrote) src/xmenu.c
+Kremer, Sebastian (changed) lisp/add-log.el
+Kremer, Sebastian (wrote) lisp/dired-aux.el
+Kremer, Sebastian (wrote) lisp/dired.el
+Kremer, Sebastian (wrote) lisp/find-dired.el
+Kremer, Sebastian (wrote) lisp/ls-lisp.el
+Kumar, Kishore (changed) lisp/terminal.el
+K�gedal, David (wrote) lisp/tempo.el
+LaLiberte, Daniel (changed) [miscellaneous changes to the manual]
+LaLiberte, Daniel (co-wrote) lisp/hideif.el
+LaLiberte, Daniel (wrote) lisp/cust-print.el
+LaLiberte, Daniel (wrote) lisp/edebug.el
+LaLiberte, Daniel (wrote) lisp/isearch.el
+Lambert, Mark (changed) src/process.c
+Lambert, Mark (changed) src/process.h
+Larson, Aaron (changed) lisp/bibtex.el
+Larus, James R. (wrote) lisp/mh-e.el
+Lepied, Frederic (changed) lisp/gnus.el
+Lindberg, Lars (changed) lisp/dabbrev.el
+Lindberg, Lars (co-wrote) lisp/imenu.el
+Lindberg, Lars (wrote) lisp/msb.el
+Love, Dave (changed) lisp/gud.el
+Lucid, Inc. (changed) src/bytecode.c
+Lucid, Inc. (wrote) lisp/byte-opt.el
+Lucid, Inc. (wrote) lisp/byte-run
+Lucid, Inc. (wrote) lisp/bytecomp.el
+Lucid, Inc. (wrote) lisp/delsel.el
+Lucid, Inc. (wrote) lisp/disass.el
+Lucid, Inc. (wrote) lisp/faces.el
+Lucid, Inc. (wrote) lisp/font-lock.el
+Lucid, Inc. (wrote) lisp/lmenu.el
+Lucid, Inc. (wrote) lisp/lselect.el
+Lucid, Inc. (wrote) lisp/mailabbrev.el
+Lucid, Inc. (wrote) lisp/select.el
+Lucid, Inc. (wrote) src/xfaces.c
+Lucid, Inc. (wrote) src/xselect.c
+MCC (changed) lib-src/etags.c
+MIT (changed) lib-src/emacsclient.c
+MIT (changed) lib-src/emacsserver.c
+MIT (changed) lib-src/movemail.c
+MIT (changed) lisp/rmail.el
+MIT (changed) lisp/rmailedit.el
+MIT (changed) lisp/rmailkwd.el
+MIT (changed) lisp/rmailmsc.el
+MIT (changed) lisp/rmailout.el
+MIT (changed) lisp/rmailsum.el
+MIT (changed) lisp/scribe.el
+MIT (changed) lisp/server.el
+MIT (changed) src/lisp.h
+MIT (changed) src/sysdep.c
+MIT (changed) src/unexec.c
+MIT (wrote) src/xmenu.c
+Mager, Neil M. (wrote) lisp/appt.el
+Manheimer, Kenneth (wrote) lisp/allout.el
+Manheimer, Kenneth (wrote) lisp/icomplete.el
+Mann, William F. (changed) lisp/perl-mode.el
+Mann, William F. (wrote) lisp/perl-mode.el
+Mansfield, Niall (changed) lib-src/etags.c
+Marick, Brian (co-wrote) lisp/hideif.el
+Marko, Kohtala (changed) lisp/info.el
+Markowitz, Sidney (changed) lisp/doctor.el
+Marshall, Simon (changed) lisp/ada.el
+Marshall, Simon (changed) lisp/comint.el
+Marshall, Simon (changed) lisp/font-lock.el
+Marshall, Simon (changed) lisp/fortran.el
+Marshall, Simon (changed) lisp/mouse.el
+Marshall, Simon (changed) lisp/outline.el
+Marshall, Simon (changed) lisp/pascal.el
+Marshall, Simon (changed) lisp/perl-mode.el
+Marshall, Simon (changed) lisp/rmail.el
+Marshall, Simon (changed) lisp/sendmail.el
+Marshall, Simon (changed) lisp/shell.el
+Marshall, Simon (changed) lisp/texinfo.el
+Martin, Charles R. (wrote) lisp/autoinsert.el
+McGary, Greg (changed) lisp/tar-mode.el
+McGrath, Roland (changed) [miscellaneous changes throughout]
+McGrath, Roland (changed) lisp/add-log.el
+McGrath, Roland (wrote) lisp/autoload.el
+McGrath, Roland (wrote) lisp/compile.el
+McGrath, Roland (wrote) lisp/etags.el
+McGrath, Roland (wrote) lisp/find-dired.el
+McGrath, Roland (wrote) lisp/map-ynp.el
+McGrath, Roland (wrote) lisp/upd-copyr.el
+Megginson, David (wrote) lisp/derived.el
+Mlynarik, Richard (changed) lisp/rmail.el
+Mlynarik, Richard (wrote) lib-src/env.c
+Mlynarik, Richard (wrote) lisp/cl-indent.el
+Mlynarik, Richard (wrote) lisp/ebuff-menu.el
+Mlynarik, Richard (wrote) lisp/ehelp.el
+Mlynarik, Richard (wrote) lisp/rfc822.el
+Mlynarik, Richard (wrote) lisp/terminal.el
+Mohan, Mosur (changed) lib-src/etags.c
+Morgenthaler, Jeff (changed) lisp/flow-ctrl.el
+Morgenthaler, Jeff (changed) lisp/term/vt200.el
+Morgenthaler, Jeff (changed) lisp/term/vt201.el
+Morgenthaler, Jeff (changed) lisp/term/vt220.el
+Morgenthaler, Jeff (changed) lisp/term/vt240.el
+Motorola (changed) lisp/buff-menu.el
+Mueller, Ulrich (changed) lisp/gud.el
+Naggum, Erik (changed) src/editfns.c
+Naggum, Erik (changed) src/editfns.c
+Nakano, Hiroshi (changed) src/ralloc.c
+Nakano, Hiroshi (changed) src/unexelf.c
+Narasimhan, Sundar (changed) lisp/rnews.el
+Narasimhan, Sundar (changed) lisp/rnewspost.el
+NeXT, Inc. (wrote) src/unexnext.c
+Neale, Mark (changed) lisp/fortran.el
+Neitzel, Martin (changed) lisp/sc.el
+Neumann, Thomas (wrote) lisp/makefile.el
+Nguyen, Thien-Thi (wrote) lisp/hideshow.el
+Nickelsen, Jurgen (wrote) lisp/ws-mode.el
+Norden, Jeff (wrote) lisp/kermit.el
+Norman, Andrew (wrote) lisp/ange-ftp.el
+Oram, Andrew (changed) [miscellaneous changes to files in man/]
+Oram, Andrew (changed) man/calendar.texi
+Pfeiffer, Daniel (wrote) lisp/sh-script.el
+Pfeiffer, Daniel (wrote) lisp/skeleton.el
+Pfeiffer, Daniel (wrote) lisp/two-column.el
+Pierresteguy, Frederic (changed) lisp/compile.el
+Pierresteguy, Frederic (changed) lisp/rmail.el
+Pierresteguy, Frederic (changed) lisp/rmailsum.el
+Pierresteguy, Frederic (changed) src/editfns.c
+Pierresteguy, Frederic (changed) src/lisp.h
+Pierresteguy, Frederic (changed) src/xfns.c
+Pierresteguy, Frederic (changed) src/xmenu.c
+Pierresteguy, Frederic (changed) src/xterm.c
+Pierresteguy, Frederic (changed) src/xterm.h
+Pierresteguy, Frederic (wrote) src/widget.c
+Plaunt, Christian (wrote) lisp/soundex.el
+Potort�, Francesco A. (changed) lib-src/etags.c
+Potort�, Francesco A. (changed) lisp/man.el
+Potort�, Francesco A. (changed) lisp/rlogin.el
+Potort�, Francesco A. (changed) lisp/vc-hooks.el
+Potort�, Francesco A. (changed) src/filelock.c
+Potort�, Francesco A. (changed) src/search.c
+Potort�, Francesco A. (wrote) lisp/cmacexp.el
+Potort�, Francesco A. (wrote) src/m/delta.h
+Prange, Michael D. (changed) lisp/tex-mode.el
+Prange, Michael D. (wrote) lisp/fortran.el
+Ram, Ashwin (wrote) lisp/refer.el
+Raymond, Eric S. (changed) [miscellaneous changes throughout]
+Raymond, Eric S. (changed) lisp/blackbox.el
+Raymond, Eric S. (changed) lisp/etags.el
+Raymond, Eric S. (changed) lisp/flow-ctrl.el
+Raymond, Eric S. (changed) lisp/mailalias.el
+Raymond, Eric S. (changed) lisp/tar-mode.el
+Raymond, Eric S. (wrote) lisp/asm-mode.el, lisp/gud.el, lisp/vc.el
+Reilly, Paul (changed) src/s/dgux.h
+Reilly, Paul (changed) src/xfns.c
+Reilly, Paul (changed) src/xmenu.c
+Reilly, Paul (wrote) src/s/dgux5-4r2.h
+Reilly, Paul (wrote) src/s/dgux5-4r3.h
+Reingold, Edward M. (changed) lisp/tex-mode.el
+Reingold, Edward M. (changed) man/calendar.texi
+Reingold, Edward M. (changed) man/text.texi
+Reingold, Edward M. (co-wrote) lisp/cal-mayan.el
+Reingold, Edward M. (wrote) lisp/cal-french.el
+Reingold, Edward M. (wrote) lisp/cal-menu.el
+Reingold, Edward M. (wrote) lisp/calendar.el
+Reingold, Edward M. (wrote) lisp/solar.el
+Riepel, Rob (wrote) lisp/tpu-doc.el
+Riepel, Rob (wrote) lisp/tpu-edt.el
+Riepel, Rob (wrote) lisp/tpu-extras.el
+Riepel, Rob (wrote) lisp/tpu-mapper.el
+Riepel, Rob (wrote) lisp/vt-control.el
+Roberts, Roland B (changed) lisp/files.el
+Roberts, Roland B (changed) lisp/sort.el
+Roberts, Roland B (changed) lisp/vms-patch.el
+Roberts, Roland B (changed) lisp/vmsproc.el
+Roberts, Roland B (changed) src/buffer.h
+Roberts, Roland B (changed) src/callproc.c
+Roberts, Roland B (changed) src/dired.c
+Roberts, Roland B (changed) src/process.c
+Roberts, Roland B (changed) src/sysdep.c
+Roberts, Roland B (changed) src/systty.h
+Roberts, Roland B (changed) src/vmspaths.h
+Roberts, Roland B (changed) vms/
+Roberts, Roland B (changed) vms/
+Roberts, Roland B (changed) vms/
+Roberts, Roland B (changed) vms/
+Roberts, Roland B (wrote) lisp/vms-pmail.el
+Roberts, Roland B (wrote) vms/
+Roberts, Roland B (wrote) vms/
+Robinson, John (wrote) lisp/term/bg-mouse.el
+Rosenblatt, William (wrote) lisp/float.el
+Rozas, Guillermo J. (changed) lisp/scheme.el
+Rozas, Guillermo J. (changed) lisp/xscheme.el
+Rozas, Guillermo J. (wrote) lib-src/fakemail.c
+Rupprecht, Wolfgang (changed) lisp/lisp-mode.el
+Rupprecht, Wolfgang (changed) lisp/loadup.el
+Rupprecht, Wolfgang (changed) lisp/sort.el
+Rupprecht, Wolfgang (changed) src/alloc.c
+Rupprecht, Wolfgang (changed) src/callint.c
+Rupprecht, Wolfgang (changed) src/
+Rupprecht, Wolfgang (changed) src/crt0.c
+Rupprecht, Wolfgang (changed) src/data.c
+Rupprecht, Wolfgang (changed) src/fns.c
+Rupprecht, Wolfgang (changed) src/lisp.h
+Rupprecht, Wolfgang (changed) src/lread.c
+Rupprecht, Wolfgang (changed) src/m/sun3.h
+Rupprecht, Wolfgang (changed) src/print.c
+Rupprecht, Wolfgang (changed) src/ymakefile
+Rupprecht, Wolfgang (wrote) lisp/float-sup.el
+Rupprecht, Wolfgang (wrote) lisp/term/sup-mouse.el
+Rupprecht, Wolfgang (wrote) src/floatfns.c
+Salem, James B. (wrote) lisp/completion.el
+Schelter, William (wrote) lisp/telnet.el
+Schlumberger Technology Corporation (changed) lisp/gud.el
+Schmid, Gregor (wrote) lisp/tcl-mode.el
+Schnell, Ronald S. (wrote) lisp/dunnet.el
+Schnoebelen, Philippe (wrote) lisp/gomoku.el
+Schnoebelen, Philippe (wrote) lisp/mpuz.el
+Schoef, Stefan (wrote) lisp/bibtex.el
+Schoepf, Rainer (changed) src/alloc.c
+Schoepf, Rainer (changed) src/lisp.h
+Schoepf, Rainer (wrote) src/m/alpha.h
+Schoepf, Rainer (wrote) src/unexalpha.c
+Shivers, Olin (wrote) lisp/cmuscheme.el
+Shivers, Olin (wrote) lisp/comint.el
+Shivers, Olin (wrote) lisp/inf-lisp.el
+Shivers, Olin (wrote) lisp/shell.el
+Skoglund, Espen (wrote) lisp/pascal.el
+Sladkey, Rick (changed) lisp/gud.el
+Sladkey, Rick (changed) lisp/replace.el
+Sladkey, Rick (changed) lisp/simple.el
+Sladkey, Rick (changed) src/intervals.c
+Sladkey, Rick (changed) src/intervals.h
+Sladkey, Rick (wrote) lisp/backquote.el
+Smith, David M. (wrote) lisp/ielm.el
+Sommerfeld, William (wrote) lib-src/emacsclient.c
+Sommerfeld, William (wrote) lib-src/emacsserver.c
+Sommerfeld, William (wrote) lisp/scribe.el
+Sommerfeld, William (wrote) lisp/server.el
+Stallman, Richard (changed) [miscellaneous changes throughout]
+Stenhoff, Ake (co-wrote) lisp/imenu.el
+Stevens, Ken et al (wrote) lisp/ispell.el
+Stigelman, Jonathan (wrote) lisp/hilit19.el
+Stoller, Leigh (changed) lib-src/emacsclient.c
+Stoller, Leigh (changed) lib-src/emacsserver.c
+Stoller, Leigh (changed) lisp/server.el
+Strassman, Steve (wrote) lisp/spook.el
+Sugou, Shinichirou (changed) lib-src/etags.c
+Suhr, Steven (changed) src/scroll.c
+Sun Microsystems, Inc. (changed) lib-src/emacsclient.c
+Sun Microsystems, Inc. (changed) lib-src/emacsserver.c
+Sun Microsystems, Inc. (changed) lisp/server.el
+Sun Microsystems, Inc. (wrote) etc/emacs.icon
+Sun Microsystems, Inc. (wrote) etc/emacstool.1
+Sun Microsystems, Inc. (wrote) lib-src/emacstool.c
+Sun Microsystems, Inc. (wrote) lisp/term/sun-curs.el
+Sun Microsystems, Inc. (wrote) lisp/term/sun-fns.el
+Sun Microsystems, Inc. (wrote) lisp/term/sun-mouse.el
+Sun Microsystems, Inc. (wrote) lisp/term/sun.el
+Sun Microsystems, Inc. (wrote) src/sunfns.c
+Sylvan, Kayvan (changed) lisp/sc.el
+Thomas, Spencer (changed) lib-src/emacsclient.c
+Thomas, Spencer (changed) lib-src/emacsserver.c
+Thomas, Spencer (changed) lisp/server.el
+Thomas, Spencer (wrote) lisp/dabbrev.el
+Thomas, Spencer (wrote) src/unexec.c
+Thompson, Jim (wrote) lisp/ps-print.el
+Tower, Leonard H. Jr. (changed) lisp/rnews.el
+Tower, Leonard H. Jr. (changed) lisp/rnewspost.el
+Tromey, Tom (changed) lisp/buff-menu.el
+Tromey, Tom (changed) lisp/makefile.el
+Tromey, Tom (changed) lisp/man.el
+Tromey, Tom (changed) src/doc.c
+Tromey, Tom (changed) src/xfns.c
+Umeda, Masanobu (wrote) gnuspost.el
+Umeda, Masanobu (wrote) lib-src/tcp.c
+Umeda, Masanobu (wrote) lisp/gnus.el
+Umeda, Masanobu (wrote) lisp/gnusmail.el
+Umeda, Masanobu (wrote) lisp/gnusmisc.el
+Umeda, Masanobu (wrote) lisp/mhspool.el
+Umeda, Masanobu (wrote) lisp/nnspool.el
+Umeda, Masanobu (wrote) lisp/nntp.el
+Umeda, Masanobu (wrote) lisp/prolog.el
+Umeda, Masanobu (wrote) lisp/rmailsort.el
+Umeda, Masanobu (wrote) man/gnus.texi
+Vail, Jonathan (changed) lisp/vc.el
+Van Artsdalen, James (changed) src/s/usg5-4.h
+Van Artsdalen, James (changed) src/unexec.c
+Voelker, Geoff (changed) src/callproc.c
+Voelker, Geoff (changed) src/dired.c
+Voelker, Geoff (changed) src/editfns.c
+Voelker, Geoff (changed) src/fileio.c
+Voelker, Geoff (changed) src/keyboard.c
+Voelker, Geoff (changed) src/lisp.h
+Voelker, Geoff (changed) src/lread.c
+Voelker, Geoff (changed) src/sysdep.c
+Voelker, Geoff (changed) src/term.c
+Voelker, Geoff (co-wrote) src/makefile.nt
+Voelker, Geoff (wrote) lisp/makefile.nt
+Voelker, Geoff (wrote) lisp/winnt.el
+Voelker, Geoff (wrote) src/nt.c
+Voelker, Geoff (wrote) src/nt.h
+Voelker, Geoff (wrote) src/ntheap.c
+Voelker, Geoff (wrote) src/ntheap.h
+Voelker, Geoff (wrote) src/ntinevt.c
+Voelker, Geoff (wrote) src/ntproc.c
+Voelker, Geoff (wrote) src/ntterm.c
+Voelker, Geoff (wrote) src/s/windowsnt.h
+Vromans, Johan (wrote) lisp/forms.el
+Vromans, Johan (wrote) lisp/iso-acc.el
+Warsaw, Barry (changed) lisp/cplus-md.el
+Warsaw, Barry (changed) lisp/gud.el
+Warsaw, Barry (changed) src/syntax.c
+Warsaw, Barry (changed) src/syntax.h
+Warsaw, Barry (wrote) lisp/cc-mode.el [originally named lisp/cplus-md1.el]
+Warsaw, Barry (wrote) lisp/elp.el
+Warsaw, Barry (wrote) lisp/man.el
+Warsaw, Barry (wrote) lisp/regi.el
+Warsaw, Barry (wrote) lisp/reporter.el
+Warsaw, Barry (wrote) lisp/supercite.el
+Welinder, Morten (changed) src/editfns.c
+Welinder, Morten (changed) src/frame.c
+Welinder, Morten (changed) src/frame.h
+Welinder, Morten (changed) src/minibuf.c
+Welinder, Morten (changed) src/msdos.c
+Welinder, Morten (changed) src/sysdep.c
+Welinder, Morten (changed) src/xfaces.c
+Welinder, Morten (changed) src/xmenu.c
+Welinder, Morten (wrote) src/dosfns.c
+Welinder, Morten (wrote) [many MSDOS files]
+Welinder, Morten (wrote) lisp/desktop.el
+Welinder, Morten (wrote) lisp/term/pc-win.el
+Welinder, Morten (wrote) src/msdos.h
+Wells, Joseph Brian (wrote) lisp/apropos.el
+Wells, Joseph Brian (wrote) lisp/mail-extr.el
+Wells, Joseph Brian (wrote) lisp/resume.el
+Williams, Mike (wrote) lisp/mouse-sel.el
+Williams, Mike (wrote) lisp/thingatpt.el
+Willisson, Pace (wrote) lisp/ispell.el
+Wollman, Garrett (changed) lisp/sendmail.el
+Wood, Stephen A. (changed) lisp/fortran.el
+Worley, Dale (changed) lisp/mail-extr.el
+Zakharevich, Ilya (changed) lisp/simple.el [under the name modifier.el]
+Zawinski, Jamie (changed) src/bytecode.c
+Zawinski, Jamie (wrote) lisp/byte-opt.el
+Zawinski, Jamie (wrote) lisp/byte-run.el
+Zawinski, Jamie (wrote) lisp/bytecomp.el
+Zawinski, Jamie (wrote) lisp/disass.el
+Zawinski, Jamie (wrote) lisp/tar-mode.el
@@ -0,0 +1,24 @@
+If you think you may have found a bug in GNU Emacs, please
+read the Bugs section of the Emacs manual for advice on
+(1) how to tell when to report a bug, and
+(2) how to write a useful bug report and what information
+it needs to have.
+There are three ways to read the Bugs section.
+(1) In a printed copy of the Emacs manual.
+You can order one from the Free Software Foundation;
+see the file etc/ORDERS. But if you don't have a copy on
+hand and you think you have found a bug, you shouldn't wait
+to get a printed manual; you should read the section right away
+as described below.
+(2) With Info. Start Emacs, do C-h i to enter Info,
+then m Emacs RET to get to the Emacs manual, then m Bugs RET
+to get to the section on bugs. Or use standalone Info in
+a like manner. (Standalone Info is part of the Texinfo distribution,
+not part of the Emacs distribution.)
+(3) By hand. Do
+ cat info/emacs* | more "+/^File: emacs, Node: Bugs,"
4,270 ChangeLog
4,270 additions, 0 deletions not shown
@@ -0,0 +1,72 @@
+This directory tree holds version 20.0 of GNU Emacs, the extensible,
+customizable, self-documenting real-time display editor.
+You may encounter bugs in this release. If you do, please report
+them; your bug reports are valuable contributions to the FSF, since
+they allow us to notice and fix problems on machines we don't have, or
+in code we don't use often. See the file BUGS for more information on
+how to report bugs.
+See the files `etc/NEWS' and `etc/news.texi' for information on new
+features and other user-visible changes since the last version of
+The file INSTALL in this directory says how to bring up GNU Emacs on
+Unix, once you have loaded the entire subtree of this directory.
+The file etc/PROBLEMS contains information on many common problems that
+occur in building, installing and running Emacs.
+Reports of bugs in Emacs should be sent to the mailing list See the "Bugs" section of the Emacs
+manual for more information on how to report bugs. (The file `BUGS'
+in this directory explains how you can find and read that section
+using the Info files that come with Emacs.) See `etc/MAILINGLISTS'
+for more information on mailing lists relating to GNU packages.
+The `etc' subdirectory contains several other files, named in
+capital letters, which you should look at when installing GNU Emacs.
+The file `configure' is a shell script to acclimate Emacs to the
+oddities of your processor and operating system. It creates the file
+`Makefile' (a script for the `make' program), which automates the
+process of building and installing Emacs. See INSTALL for more
+detailed information.
+The file `' is the input used by the autoconf program to
+construct the `configure' script. Since Emacs has configuration
+requirements that autoconf can't meet, `' uses an unholy
+marriage of custom-baked configuration code and autoconf macros; it
+may be wise to avoid rebuilding `configure' from `' when
+The file `' is a template used by `configure' to create
+The file `make-dist' is a shell script to build a distribution tar
+file from the current Emacs tree, containing only those files
+appropriate for distribution. If you make extensive changes to Emacs,
+this script will help you distribute your version to others.
+There are several subdirectories:
+`src' holds the C code for Emacs (the Emacs Lisp interpreter and its
+ primitives, the redisplay code, and some basic editing functions).
+`lisp' holds the Emacs Lisp code for Emacs (most everything else).
+`lib-src' holds the source code for some utility programs for use by
+ or with Emacs, like movemail and etags.
+`etc' holds miscellaneous architecture-independent data files
+ Emacs uses, like the tutorial text and the Zippy the Pinhead quote
+ database. The contents of the `lisp', `info' and `man'
+ subdirectories are architecture-independent too.
+`info' holds the Info documentation tree for Emacs.
+`man' holds the source code for the Emacs manual.
+ Note that the Emacs Lisp manual sources are distributed separately.
+(They are twice as large as the Emacs manual in the man subdirectory.)
+`msdos' holds configuration files for compiling Emacs under MSDOG.
+`vms' holds instructions and useful files for running Emacs under VMS.
+`nt' holds various command files and documentation files that pertain
+ to running Emacs on Windows NT.
15 move-if-change
@@ -0,0 +1,15 @@
+test -r $2
+cmp $1 $2 > /dev/null
+echo $2 is unchanged
+rm -f $1
+mv -f $1 $2
+mv -f $1 $2
BIN  msdos/emacs.ico
Binary file not shown
BIN  msdos/emacs.pif
Binary file not shown
222 msdos/is_exec.c
@@ -0,0 +1,222 @@
+/* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
+ *
+ * Given a filename or a file handle, and the extension of the file,
+ * determine if the file is executable.
+ * First, the file extension is checked in case it uniquely identifies
+ * the file as either an executable or not. Failing this, the first
+ * two bytes of the file are tested for known signatures of executable
+ * files.
+ *
+ * Copyright (c) 1994 Eli Zaretskii <>
+ *
+ * This software may be used freely so long as this copyright notice is
+ * left intact. There is no warranty on this software.
+ *
+ */
+#include <libc/stubs.h>
+#include <stdio.h>
+#include <string.h>
+#include <ctype.h>
+#include <errno.h>
+#include <dpmi.h>
+#include <go32.h>
+#include <io.h>
+#include <libc/farptrgs.h>
+#include <libc/dosio.h>
+extern unsigned short _djstat_flags;
+unsigned short _get_magic(const char *, int);
+int _is_executable(const char *, int, const char *);
+ * Read a MAGIC NUMBER from a given file. These are the first
+ * two bytes of the file, if we look at them as an unsigned short. */
+#define _STAT_EXEC_EXT 2 /* get execute bits from file extension? */
+#define _STAT_EXEC_MAGIC 4 /* get execute bits from magic signature? */
+unsigned short
+_get_magic(const char *s, int fh)
+ __dpmi_regs regs;
+ unsigned short retval;
+ unsigned short fpos_high = 0, fpos_low = 0;
+ int read_fail = 0;
+ /* If given a pathname, open the file. */
+ if (s)
+ {
+ int handle;
+ if((handle = _open(s,0)) == -1)
+ return 0;
+ regs.x.bx = handle;
+ }
+ /* Else file already open. Remember its current file position
+ and move to beginning of file. */
+ else
+ {
+ = 0x4201; /* set pointer from current position */
+ regs.x.bx = fh;
+ = regs.x.dx = 0; /* move 0 bytes (i.e., stay put) */
+ __dpmi_int(0x21, &regs);
+ if (regs.x.flags & 1)
+ {
+ errno = __doserr_to_errno(;
+ return 0;
+ }
+ fpos_high = regs.x.dx; /* got current position */
+ fpos_low =;
+ = 0x4200; /* set pointer from the beginning of file */
+ = regs.x.dx = 0; /* move to beginning of file */
+ __dpmi_int(0x21, &regs);
+ if (regs.x.flags & 1)
+ {
+ errno = __doserr_to_errno(;
+ return 0;
+ }
+ }
+ regs.x.ds = __tb_segment;
+ regs.x.dx = __tb_offset;
+ /* Read 2 bytes from the file. */
+ = 0x3f00;
+ = 2;
+ __dpmi_int(0x21, &regs);
+ /* We can either (1) succeed, (2) read less than 2 bytes,
+ or (3) fail to read at all. */
+ if ( != 2)
+ read_fail = (regs.x.flags & 1) ? : -1;
+ /* If called with filename, close the file. */
+ if (s)
+ {
+ = 0x3e00;
+ __dpmi_int(0x21, &regs);
+ if (regs.x.flags & 1)
+ errno = __doserr_to_errno(;
+ }
+ /* Else leave file pointer where we found it. */
+ else
+ {
+ = 0x4200; /* set pointer from the beginning of file */
+ regs.x.bx = fh;
+ = fpos_high;
+ regs.x.dx = fpos_low;
+ __dpmi_int(0x21, &regs);
+ if (regs.x.flags & 1)
+ {
+ errno = __doserr_to_errno(;
+ return 0;
+ }
+ }
+ if (read_fail == 0)
+ retval = _farpeekw(_dos_ds, __tb);
+ else
+ {
+ /* The file couldn't be read: assume non-executable. If the file
+ *is* executable, but was passed as a file-handle, and the user
+ opened it in write-only mode, they lose... */
+ retval = 0;
+ if (read_fail != -1)
+ errno = __doserr_to_errno(read_fail);
+ }
+ return retval;
+/* A list of extensions which designate executable files. These
+ are NOT tested for the magic number. */
+static char executables[] = "|EXE|COM|BAT|BTM|DLL|VXD|";
+/* A list of extensions which belong to files known to NEVER be
+ executables. These exist to minimize read()'ing files while
+ detecting executables by magic number. You are welcome to
+ add to this list, but remember: only extensions which could
+ NEVER be present in executables should go here. */
+static char non_executables[] = "\
+_is_executable(const char *filename, int fhandle, const char *extension)
+ if (!extension && filename)
+ {
+ const char *cp, *ep=0;
+ for (cp=filename; *cp; cp++)
+ {
+ if (*cp == '.')
+ ep = cp;
+ if (*cp == '/' || *cp == '\\' || *cp == ':')
+ ep = 0;
+ }
+ extension = ep;
+ }
+ if ((_djstat_flags & _STAT_EXEC_EXT) == 0
+ && extension
+ && *extension
+ && strlen(extension) <= ((extension[0]=='.') ? 4 : 3))
+ {
+ /* Search the list of extensions in executables[]. */
+ char tmp_buf[6], *tp = tmp_buf;
+ *tp++ = '|';
+ if (*extension == '.')
+ extension++;
+ while (*extension)
+ *tp++ = toupper (*extension++);
+ *tp++ = '|';
+ *tp = '\0';
+ if (strstr(non_executables, tmp_buf))
+ return 0;
+ else if (strstr(executables, tmp_buf))
+ return 1;
+ }
+ /* No extension, or extension doesn't define execute
+ bits unambiguously. We are in for some dirty work.
+ Read the first two bytes of the file and see if they
+ are any of the known magic numbers which designate
+ executable files.
+ Unix-like shells, which have executable shell scripts
+ without extensions and DON'T have "#!" as their FIRST
+ TWO CHARACTERS, lose here. Sorry, folks. */
+ if ( (_djstat_flags & _STAT_EXEC_MAGIC) == 0 )
+ {
+ switch (_get_magic(filename, fhandle))
+ {
+ case 0x5a4d: /* "MZ" */
+ case 0x010b:
+ case 0x014c:
+ case 0x2123: /* "#!" */
+ return 1;
+ }
+ }
+ return 0;
38 msdos/sigaction.c
@@ -0,0 +1,38 @@
+/* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
+#include <signal.h>
+#include <errno.h>
+sigaction(int _sig, const struct sigaction *_act, struct sigaction *_oact)
+ int retval = 0;
+ if (_oact)
+ {
+ void (*installed_sig)(int) = signal (_sig, SIG_IGN);
+ /* FIXME */
+ if (installed_sig == SIG_ERR)
+ {
+ retval = -1;
+ errno = EINVAL;
+ }
+ else
+ signal (_sig, installed_sig);
+ _oact->sa_handler = installed_sig;
+ retval = sigemptyset (&_oact->sa_mask);
+ _oact->sa_flags = 0;
+ }
+ if (_act)
+ {
+ if (signal (_sig, _act->sa_handler) == SIG_ERR)
+ {
+ retval = -1;
+ errno = EINVAL;
+ }
+ }
+ return 0;
512 nt/ChangeLog
@@ -0,0 +1,512 @@
+1999-07-12 Richard Stallman <>
+ * Version 20.4 released.
+1999-06-16 Andrew Innes <>
+ * emacs.rc: Use an icon with a transparent background, to be in
+ keeping with other applications.
+1999-06-03 Andrew Innes <>
+ * preprep.c: Fix typo.
+1999-05-02 Andrew Innes <>
+ * config.h: Remove obsolete file.
+ * preprep.c (copy_executable_and_move_sections): Ifdef out a
+ couple of unused switch cases that aren't defined on all
+ platforms.
+ * ftime.bat: Add another variation of the profile command, which
+ only profiles extended commands.
+1999-03-31 Geoff Voelker <>
+ * cmdproxy.c (main): Fix parens.
+1999-03-25 Andrew Innes <>
+ * cmdproxy.c (main): Call GetShortPathName to normalize program
+ names for comparison.
+1999-03-05 Geoff Voelker <>
+ * makefile.def: Compile multiple .c files when possible.
+ Use BLD instead of assuming i386.
+ * makefile.nt: Remove common multiple file compilation commands.
+1999-03-04 Geoff Voelker <>
+ * cmdproxy.c (main): Add missing parens.
+1999-02-20 Andrew Innes <>
+ * preprep.c: New program to allow dumped image to be profiled.
+ * makefile.nt (preprep): New target.
+ (ALL): Build it.
+ * makefile.def (ARCH_CFLAGS): Set struct packing to 8.
+ * ftime.bat: Invoke preprep to prepare dumped image for profiling.
+ Change prep options to profile libc functions and skip the startup
+ code.
+1999-02-15 Geoff Voelker <>
+ * makefile.nt: Create installation directory as first step.
+1999-01-31 Andrew Innes <>
+ * addsection.c: (ROUND_UP_DST_AND_ZERO): Renamed from
+ ROUND_UP_DST. Zeroes the alignment slop.
+ (copy_executable_and_add_section): Update the
+ SizeOfHeaders field properly.
+1999-01-27 Andrew Innes <>
+ * makefile.nt: Do make version comparison as strings.
+1999-01-26 Andrew Innes <>
+ * runemacs.c (WinMain): Pass explicit environment block to
+ CreateProcess, to work around a bug in Windows 95/98.
+1999-01-22 Geoff Voelker <>
+ * icons: New directory with Davenport's icons.
+ icons/sink.ico: Renamed from emacs.ico.
+ * makefile.nt (install, fast_install): Install Windows icons
+ into etc/icons.
+ * emacs.rc (ICON): Use icons/gnu2a32.ico as the default icon.
+1999-01-17 Andrew Innes <>
+ * makefile.nt: (ALL): List top-level targets.
+ (addsection): New top-level target.
+ (install): Copy fns-*.el to bin directory.
+ * addsection.c: New program to add static heap section to
+ temacs.exe after linking, in support of new unexec method.
+1998-12-28 Andrew Innes <>
+ * cmdproxy.c (spawn): Pass directory for child as parameter.
+ (main): Save startup directory to give to spawn, then change
+ directory to location of .exe in order not to prevent startup
+ directory from being deleted.
+1998-12-08 Geoff Voelker <>
+ * makefile.nt: Do string comparision of _NMAKE_VER.
+1998-12-02 Geoff Voelker <>
+ * config.nt (LOCALTIME_CACHE): Define.
+1998-11-13 Andrew Innes <>
+ * install.bat: Convert to DOS format.
+1998-11-10 Andrew Innes <>
+ * cmdproxy.c (main): Set environment size only when running
+1998-11-03 Theodore Jump <>
+ * makefile.def (SYS_LDFLAGS): Use swapfile when running from cd or net.
+ (DEL_TREE): Use rd instead of rmdir.
+ (ARCH_CFLAGS): Optimize for P6. Align structures on 8-byte boundaries.
+ * makefile.nt: Compile multiple source files when possible.
+1998-10-05 Geoff Voelker <>
+ * cmdproxy.c (main): Treat command line options as case-insensitive.
+1998-08-19 Richard Stallman <>
+ * Version 20.3 released.
+1998-07-20 Geoff Voelker <>
+ * addpm.c (main): Explicitly check result of message box for OK.
+1998-06-05 Andrew Innes <>
+ * inc/sys/file.h (D_OK): Define new macro.
+1998-06-01 Andrew Innes <>
+ * makefile.def (CFLAGS): Do not define HAVE_NTGUI.
+1998-05-30 Geoff Voelker <>
+ * emacs.rc (VS_VERSION_INFO): Define.
+1998-04-23 Geoff Voelker <>
+ * makefile.nt (emacs.bat, debug.bat): Create them in the
+ installation directory.
+1998-04-23 Andrew Innes <>
+ * ddeclient.c: New file. (Support program for performing limited
+ interprocess communication on Windows.)
+ * makefile.nt: Build ddeclient.
+ * cmdproxy.c (main): Only set environment size for real shell, and
+ provide extra directory argument, when running on Windows 95.
+1998-04-17 Geoff Voelker <>
+ * cmdproxy.c (fail): Exit with a negative return value.
+ (spawn): Return subprocess return code as an argument.
+ Explicitly copy environment block.
+ (main): Update to use return value argument with spawn.
+ Retry if spawn failed when a subshell was not tried.
+ * config.nt: Include new macros from src/
+ (RE_TRANSLATE_TYPE): Use Lisp_Object as type.
+ (RE_TRANSLATE): Use char_table_translate.
+ * makefile.def (CP_DIR): Preserve attributes.
+ * makefile.nt (clean): Delete patch generated files, optimized
+ build directory.
+1997-10-01 Geoff Voelker <>
+ * addpm.c (env_vars): Fix misplaced % in SHELL entry.
+1997-09-19 Richard Stallman <>
+ * Version 20.2 released.
+1997-09-15 Richard Stallman <>
+ * Version 20.1 released.
+1997-09-11 Geoff Voelker <>
+ * New file.
+ * makefile.nt (debug.bat): New target.
+1997-09-02 Andrew Innes <>
+ * addpm.c (env_vars): Put site-lisp before lisp in EMACSLOADPATH.
+ Quote group name. Allow different icons to be specified.
+ * cmdproxy.c (get_env_size): New function.
+ (spawn): Explicitly pass in environment when creating subprocess.
+ (main): Cleaup error messages.
+ Specify dynamically sized environment block for real shell.
+ Pass on unhandled switches to real shell.
+ Quote program name.
+ * makefile.def (CFLAGS_COMMON): Place pdb file in object build
+ directory.
+ (CFLAGS) [!MSVCNT11]: Define _CRTAPI1.
+ * runemacs.c (WinMain): Allow Emacs process to be started with
+ high or low priority.
+ * Remove OS dependent operations.
+1997-09-02 Geoff Voelker <>
+ * addpm.c (env_vars): No longer set INFOPATH.
+ * cmdproxy.c (get_next_token): Null terminate token returned.
+ * (INFOPATH): No longer set INFOPATH.
+1997-08-10 Andrew Innes <>
+ * addpm.c (env_vars): Set SHELL to cmdproxy.
+ (main): Initialize idDde to 0.
+ Determine emacs_path from module file name.
+ Prompt for install.
+ * makefile.def (MSVCNT11): Conditionally define it.
+ (BASE_LIBS): Do not use oldnames.lib.
+ (SYS_LDFLAGS): Use pdb files.
+ (ARCH_CFLAGS) [i386 && spd]: Use space optimizations.
+ (ARCH_CFLAGS) [alpha && spd]: Use optimizations.
+ * makefile.nt (ALL): Build cmdproxy.
+ (cmdproxy): New target.
+ (install): Install cmdproxy.
+ * ftime.bat, debug.bat, cmdproxy.c: New files.
+1997-07-10 Geoff Voelker <>
+ * inc/sys/socket.h: (shutdown): Define.
+ (sys_shutdown): Export.
+1997-07-08 Richard Stallman <>
+ * config.nt (RE_TRANSLATE): Copy definition from
+1997-07-01 Geoff Voelker <>
+ * config.nt: Update file comments.
+ Update undefs added/removed in src/
+1997-06-19 Geoff Voelker <>
+ * makefil.def, emacs.bat: Use windows95 and windowsnt instead
+ of win95 and winnt, respectively.
+1997-01-04 Geoff Voelker <>
+ * makefile.nt (real_install): Create site-lisp in installation dir.
+ * addpm.c (env_vars): Add site-lisp to EMACSLOADPATH.
+ * Add site-lisp to EMACSLOADPATH.
+1996-08-11 Richard Stallman <>
+ * Version 19.33 released.
+1996-08-09 Geoff Voelker <>
+ * runemacs.c (WinMain): Put a space between the binary and its args.
+1996-07-31 Richard Stallman <>
+ * Version 19.32 released.
+1996-07-16 Andrew Innes <>
+ * makefile.nt (clean): Use OBJDIR macro.
+1996-06-03 Kim F. Storm <>
+ * runemacs.c (CHOOSE_NEWEST_EXE): New parameter macro.
+ Not defined by default.
+ (WinMain): Add conditional testing CHOOSE_NEWEST_EXE.
+ (WinMain): Convert backslashes to slashes in env var values.
+ * addpm.c (env_vars): Use slashes, not backslashes.
+1996-05-25 Karl Heuer <>
+ * Version 19.31 released.
+1996-05-13 Andrew Innes <>
+ * install.bat: Set BUILD_TYPE and INSTALL_DIR before calling make;
+ undo settings afterwards.
+1996-05-08 Andrew Innes <>
+ * addpm.c (env_vars): Set SHELL registry entry to value of COMSPEC
+ environment variable.
+1996-05-03 Andrew Innes <>
+ * install.bat: Allow for optimized build.
+ * makefile.def [BUILD_TYPE]: Build optimized version in its own dir.
+ (ARCH_CFLAGS) [BUILD_TYPE == spd]: Build optimized version.
+1996-05-03 Andrew Innes <>
+ * addpm.c (REG_ROOT): Don't use a trailing backslash.
+ (env_vars): Rename field emacs_path to emacs_dir.
+ (main): Add link to runemacs instead of emacs.
+ * install.bat: Check if INSTALL_DIR is passed as an argument.
+ * makefile.def (CONFIG_H) [WIN95]: Use config.nt.
+ * makefile.nt: Build and install runemacs.exe.
+ * runemacs.c: New file.
+ * config.w95: File removed.
+ * inc/netdb.h, inc/unistd.h, inc/arpa/inet.h, inc/netinet/in.h,
+ inc/sys/socket.h, inc/sys/time.h: New header files.
+ * inc/sys/file.h (F_OK, X_OK, W_OK, R_OK): New macros.
+1996-03-27 Geoff Voelker <>
+ * makefile.def (DEL): Defined.
+ (DEL_TREE) [win95]: Defined.
+ (SYS_LDFLAGS): Set executable versions to 3.10.
+ * makefile.nt: Change uses of del to $(DEL).
+1996-01-17 Erik Naggum <>
+ * All files: Update FSF's address in comment preamble.
+1996-01-03 George V. Reilly <>
+ * emacs.ico: Now the proverbial kitchen sink icon.
+1995-11-24 Richard Stallman <>
+ * Version 19.30 released.
+1995-11-22 Geoff Voelker <>
+ * makefile.def (CP_DIR): Use platform independent switches for xcopy.
+ * makefile.nt (install, fast_install, real_install, clean):
+ Don't use switches to del not supported by Win95.
+1995-11-07 Kevin Gallo <>
+ * makefile.nt (addpm.exe): Link with $(ADVAPI32).
+ (install, fast_install): Change same-dir test to create test file in
+ installation tree and thereby support read-only shares.
+ (clean): Remove .pdb files.
+ * makefile.def (NTGUI): New macro.
+ * config.nt, config.w95: Update to latest src/
+ * addpm.c (env_vars): New variable.
+ (add_registry): New procedure.
+ (main): Use values of configuration environment variables from
+ the registry if defined, the process environment otherwise.
+1995-06-19 Richard Stallman <>
+ * Version 19.29 released.
+ * makefile.nt (addpm.exe): Change WinMainCRTStartup to mainCRTStartup.
+1995-06-13 Geoff Voelker <>
+ * makefile.nt: Define .c to .obj suffix rule.
+ (addpm.obj): Compile directly, use CFLAGS.
+ (addpm.exe): Link from addpm.obj.
+ * makefile.def (MSVCNT11): Defined.
+ (BASE_LIBS) [MSVCNT11]: Use oldnames.lib.
+ (CFLAGS_COMMON): Defined.
+ (CFLAGS) [MSVCNT11]: Define _CRTAPI1 to _cdecl.
+1995-06-09 Geoff Voelker <>
+ * Renamed from emacs.bat
+ (emacs_dir): Renamed from emacs_path
+ Definition removed.
+ * addpm.c: New file.
+ * makefile.nt (ALL,addpm,addpm.exe,addpm.obj): Defined.
+ (all): Depend upon $(BLD) and $(ALL).
+ (install): Depend upon emacs.bat.
+ Create program item for Emacs.
+ (clean): Delete obj.
+ (emacs.bat): Defined.
+ * makefile.def (EMACS_ICON_PATH,ADDPM): Defined.
+1995-05-27 Geoff Voelker <>
+ * ebuild.bat, emacs.bat, fast-install.bat, install.bat:
+ Add carriage returns; necessary for batch files on Win95.
+1995-05-25 Geoff Voelker <>
+ * config.w95: Created.
+ * config.h: Changed to config.nt.
+ * makefile.nt (SUBDIRS): Commented out.
+ (all,install,clean): Expand for-loops.
+ * makefile.def (SYS_LIB_DIR,SYS_INC_DIR): Undefined.
+ (ARCH): New definition.
+ (CPU,CONFIG_H,OS_TYPE): Defined.
+ (INCLUDE,LIB): Checked if valid.
+ (ntwin32.mak): Included.
+ (AR,CC,LINK): New definition.
+ (ADVAPI32,libc,BASE_LIBS): Defined.
+ (SYS_LDFLAGS): New definition.
+ Update comments and preprocessor conditionals.
+ * emacs.bat (SHELL): Conditionally defined.
+ (HOME): Conditionally defined.
+ (emacs_path,HOME): Update comments.
+ Turn off all echo.
+1995-05-09 Geoff Voelker <>
+ * _emacs, config.h, ebuild.bat, emacs.bat, emacs.rc,
+ fast-install.bat, install.bat, makefile.def, makefile.nt, paths.h,
+ inc/pwd.h, inc/sys/dir.h, inc/sys/file.h, inc/sys/ioctl.h,
+ inc/sys/param.h: Removed carriage-returns.
+1995-05-06 Geoff Voelker <>
+ * makefile.def (CVTRES): Defined.
+ * emacs.ico, emacs.rc: New files by Kevin Gallo.
+1995-04-10 Geoff Voelker <>
+ * src: Removed.
+ * src\config.h, src\paths.h: Moved to parent dir, src removed.
+1995-04-09 Geoff Voelker <>
+ * makefile.def (INSTALL_DIR): Changed to generic directory.
+ * emacs.bat: Added arguments when emacs.exe invoked.
+ * ebuild.cmd, emacs.cmd, install.cmd: Changed extension to .bat.
+1994-12-13 voelker <>
+ * makefile.def (CC): In configuration section.
+ (COMPAT_LIB): Defined.
+1994-11-01 voelker <>
+ * src/paths.h: New file.
+ * src/config.h: New file.
+ * inc/pwd.h: New file.
+ * inc/sys/dir.h: New file.
+ * inc/sys/file.h: New file.
+ * inc/sys/ioctl.h: New file.
+ * inc/sys/param.h: New file.
+ * todo: New file.
+ * readme: New file.
+ * makefile.nt: New file.
+ * makefile.def: New file.
+ * install.cmd: New file.
+ * install: New file.
+ * fast-install.cmd: New file.
+ * emacs.cmd: New file.
+ * ebuild.cmd: New file.
+ * _emacs: New file.
165 nt/INSTALL
@@ -0,0 +1,165 @@
+ Building and Installing Emacs
+ on Windows NT and Windows 95
+You need a compiler package to build and install Emacs on NT or Win95.
+If you don't have one, precompiled versions are available in
+(1) In previous versions, you needed to edit makefile.def
+ to reflect the compiler package that you are using. You should no
+ longer have to do this if you have defined the INCLUDE and LIB
+ environment variables, as is customary for use with Windows compilers.
+ (Unless you are using MSVCNT 1.1, in which case you will need
+ to set MSVCNT11 to be a non-zero value at the top of makefile.def.)
+(2) Choose the directory into which Emacs will be installed, and
+ edit makefile.def to define INSTALL_DIR to be this directory.
+ (Alternatively, if you have INSTALL_DIR set as an environment
+ variable, the build process will ignore the value in makefile.def
+ and use the value of the environment variable instead.) Note
+ that if it is not installed in the directory in which it is built,
+ the ~16 MB of lisp files will be copied into the installation directory.
+ Also, makefile.def is sometimes unpacked read-only; use
+ > attrib -r makefile.def
+ to make it writable.
+(3) You may need to edit nt/paths.h to specify some other device
+ instead of `C:'.
+(4) The target to compile the sources is "all", and is recursive starting
+ one directory up. The makefiles for the NT port are in files named
+ "makefile.nt". To get things started, type in this directory:
+ > nmake -f makefile.nt all
+ or use the ebuild.bat file.
+ When the files are compiled, you will see some warning messages declaring
+ that some functions don't return a value, or that some data conversions
+ will be lossy, etc. You can safely ignore these messages. The warnings
+ may be fixed in the main FSF source at some point, but until then we
+ will just live with them.
+ NOTE: You should not have to edit src\paths.h to get Emacs to run
+ correctly. All of the variables in src\paths.h are configured
+ during start up using the nt\emacs.bat file (which gets installed
+ as bin\emacs.bat -- see below).
+(5) Currently, Emacs requires a number of environment variables to be set
+ for it to run correctly. A batch file, emacs.bat, is provided that
+ sets these variables appropriately and then runs the executable
+ (emacs.bat is generated using the definition of INSTALL_DIR in
+ nt\makefile.def and the contents of nt\
+(6) The install process will install the files necessary to run Emacs in
+ INSTALL_DIR (which may be the directory in which it was built),
+ and create a program manager/folder icon in a folder called GNU Emacs.
+ From this directory, type:
+ > nmake -f makefile.nt install
+ or use the install.bat file.
+(7) Create the Emacs startup file. This file can be named either .emacs,
+ as on Unix, or _emacs. Note that Emacs requires the environment
+ variable HOME to be set in order for it to locate the startup file.
+ HOME could be set, for example, in the System panel of the Control
+ Panel on NT, or in autoexec.bat on Win95.
+(8) Start up Emacs.
+ The installation process should have run the addpm.exe program, which
+ does two things. First, it will create a set of registry keys that
+ tell Emacs where to find its support files (lisp, info, etc.).
+ Second, it will create a folder containing an icon linked to
+ runemacs.exe (a wrapper program for invoking Emacs). You can
+ also invoke addpm.exe by hand, giving the absolute directory name
+ of the installation directory as the first argument:
+ addpm.exe %INSTALL_DIR%
+ Now, to run Emacs, simply click on the icon in the newly created
+ folder or invoke runemacs.exe from a command prompt.
+ Another alternative for running Emacs is to use the emacs.bat batch
+ file in the bin directory (this was the traditional method of invoking
+ Emacs). Edit the emacs.bat file to change the emacs_dir environment
+ variable to point to the Emacs installation directory and invoke the
+ emacs.bat file to run Emacs.
+ Note that, on Win95, you are likely to get "Out of environment space"
+ messages when invoking the emacs.bat batch file. The problem is that
+ the console process in which the script is executed runs out of memory
+ in which to set the Emacs environment variables. To get around this
+ problem, create a shortcut icon to the emacs.bat script. Then right
+ click on the icon and select Properties. In the dialog box that pops
+ up, select the Memory tab and then change the Environment memory
+ allocation from "Auto" to "1024". Close the dialog box and then
+ double click on the icon to start Emacs.
+(9) You should be able to debug Emacs using the MSVC debugger as you would
+ any other program. To ensure that Emacs uses the lisp files associated
+ with the source distribution that you are debugging, it is useful
+ to set the Emacs environment variables to point Emacs to the
+ source distribution. You can use the debug.bat batch file in this
+ directory to setup the environment and invoke msdev on the
+ emacs.exe executable.
+ Emacs functions implemented in C use a naming convention that
+ reflects their names in lisp. The names of the C routines are
+ the lisp names prefixed with 'F', and with dashes converted to
+ underscores. For example, the function call-process is implemented
+ in C by Fcall_process. Similarly, lisp variables are prefixed
+ with 'V', again with dashes converted to underscores. These
+ conventions enable you to easily set breakpoints or examine familiar
+ lisp variables by name.
+ Since Emacs data is often in the form of a lisp object, and the
+ Lisp_Object type is difficult to examine manually in the debugger,
+ Emacs provides a helper routine called debug_print that prints out
+ a readable representation of a Lisp_Object. The output from
+ debug_print is sent to stderr, and to the debugger via the
+ OutputDebugString routine. The output sent to stderr should be
+ displayed in the console window that was opened when the emacs.exe
+ executable was started. The output sent to the debugger should be
+ displayed in its "Debug" output window.
+ When you are in the process of debugging Emacs and you would like
+ to examine the contents of a Lisp_Object variable, popup the
+ QuickWatch window (QuickWatch has an eyeglass symbol on its button
+ in the toolbar). In the text field at the top of the window, enter
+ debug_print(<variable>) and hit return. For example, start
+ and run Emacs in the debugger until it is waiting for user input.
+ Then click on the Break button in the debugger to halt execution.
+ Emacs should halt in ZwUserGetMessage waiting for an input event.
+ Use the Call Stack window to select the procedure w32_msp_pump
+ up the call stack (see below for why you have to do this). Open
+ the QuickWatch window and enter debug_print(Vexec_path). Evaluating
+ this expression will then print out the contents of the lisp
+ variable exec-path.
+ If QuickWatch reports that the symbol is unknown, then check the
+ call stack in the Call Stack window. If the selected frame in the
+ call stack is not an Emacs procedure, then the debugger won't
+ recognize Emacs symbols. Instead, select a frame that is inside
+ an Emacs procedure and try using debug_print again.
+ If QuickWatch invokes debug_print but nothing happens, then check
+ the thread that is selected in the debugger. If the selected
+ thread is not the last thread to run (the "current" thread), then
+ it cannot be used to execute debug_print. Use the Debug menu
+ to select the current thread and try using debug_print again.
+ Note that the debugger halts execution (e.g., due to a breakpoint)
+ in the context of the current thread, so this should only be a problem
+ if you've explicitly switched threads.
61 nt/README
@@ -0,0 +1,61 @@
+ Emacs for Windows NT and Windows 95
+This directory contains support for compiling and running GNU Emacs on
+Windows NT and Windows 95. This port supports all of the major
+functionality of the Unix version, including subprocesses, windowing
+features (fonts, colors, scroll bars, multiple frames, etc.), and
+networking support.
+Precompiled distributions are also available; ftp to
+for the latest precompiled distributions.
+* Preliminaries
+To compile Emacs, you will need a Microsoft C compiler package. For
+NT, this can be any of the SDK compilers from NT 3.1 and up, Microsoft
+Visual C++ for NT (versions 1.0 and up), or Microsoft Visual C++
+(versions 2.0 and up). For Windows 95, this can be Microsoft Visual
+C++ versions 2.0 and up.
+* Building and installing
+See the INSTALL file in this directory for detailed instructions on
+building and installing Emacs on your system.
+* Further information
+If you have access to the World Wide Web, I would recommend pointing
+your favorite web browser to the document (if you haven't already):
+This web document serves as a FAQ and a source for further information
+about the port and related software packages.
+There is also a mailing list for discussing issues related to this
+port of Emacs. For information about the list, send a message to with the word "info" in the
+*body* of the message. To subscribe to the list, send a message to
+the same address with the word "subscribe" in the body of the message;
+similarly, to unsubscribe from the list, send a message with the word
+"unsubscribe" in the message body.
+You are also always welcome to send me mail directly. If you don't
+hear from me immediately, however, don't worry; it sometimes takes me
+a few days (or longer) to get to all of my mail regarding Emacs.
+* Reporting bugs
+If you encounter bugs in this port of Emacs, first check the FAQ on
+the web page above to see if the bug is already known and if there are
+any workarounds. If not, then I would like to hear about it; either
+send a bug report to the mailing list, or to me directly (I would
+recommend sending to the list first).
28 nt/TODO
@@ -0,0 +1,28 @@
+This is a list of known problems to date with the Windows NT/95 port of
+GNU Emacs.
+* Handle wildcards in ls-lisp (e.g., C-x d *.c).
+* Interactive subprocess output is buffered in jerky
+* Presently, C:\foo\bar and C:/foo/bar bring up two buffers on the same file.
+ Solve this by adding a switch that canonicalizes path separators
+ (e.g., make them all / or all \)?
+* call-process-region: Another tricky situation with binary and text modes.
+ An example by use crypt++ to load compressed
+ data into a buffer, edit the buffer, save the data back out. (Also
+ need to propagate the "/C" switch change sent the shell in crypt++.el
+ back to the author.)
+* Dired uses ls-lisp, which reports all files as being owned by the
+ current user. Need to dig through the security descriptor to extract
+ the owner of the file (and the group?) using LookupAccountSid.
+* Integrate the build for NT into the GNU config process once
+ a decent shell becomes freely available
+* Integrate networking.
+* Fix Win95 subprocesses.
BIN  nt/icons/emacs.ico
Binary file not shown
BIN  nt/icons/gnu2a32.ico
Binary file not shown
BIN  nt/icons/gnu2a32t.ico
Binary file not shown
BIN  nt/icons/gnu2b48.ico
Binary file not shown
BIN  nt/icons/gnu2b48t.ico
Binary file not shown
BIN  nt/icons/gnu3b32.ico
Binary file not shown
BIN  nt/icons/gnu3b32t.ico
Binary file not shown
BIN  nt/icons/gnu4g48.ico
Binary file not shown
BIN  nt/icons/gnu4g48t.ico
Binary file not shown
BIN  nt/icons/gnu5w32.ico
Binary file not shown
BIN  nt/icons/gnu5w32t.ico
Binary file not shown
BIN  nt/icons/gnu6w48.ico
Binary file not shown
BIN  nt/icons/gnu6w48t.ico
Binary file not shown
BIN  nt/icons/gnu7.ico
Binary file not shown
BIN  nt/icons/gnu8.ico
Binary file not shown
BIN  nt/icons/gnu9.ico
Binary file not shown
BIN  nt/icons/sink.ico
Binary file not shown
23 update-subdirs
@@ -0,0 +1,23 @@
+# Write into $1/subdirs.el a list of subdirs of directory $1.
+cd $1
+for file in *; do
+ case $file in
+ *.elc | *.el | term | RCS | Old | . | .. | =* | *~ | *.orig | *.rej)
+ ;;
+ *)
+ if [ -d $file ]; then
+ subdirs="\"$file\" $subdirs"
+ fi
+ ;;
+ esac
+if [ "x$subdirs" = x ]; then
+ rm -f subdirs.el
+ echo ";; In load-path, after this directory should come
+;; certain of its subdirectories. Here we specify them." > subdirs.el
+ echo "(normal-top-level-add-to-load-path '($subdirs))" >> subdirs.el
Please sign in to comment.
Something went wrong with that request. Please try again.