--- /dev/null
+;; Red Hat Linux default .emacs initialization file
+
+;; Are we running XEmacs or Emacs?
+(defvar running-xemacs (string-match "XEmacs\\|Lucid" emacs-version))
+
+;; Set up the keyboard so the delete key on both the regular keyboard
+;; and the keypad delete the character under the cursor and to the right
+;; under X, instead of the default, backspace behavior.
+(global-set-key [delete] 'delete-char)
+(global-set-key [kp-delete] 'delete-char)
+
+;; Turn on font-lock mode for Emacs
+(cond ((not running-xemacs)
+ (global-font-lock-mode t)
+))
+
+;; Always end a file with a newline
+(setq require-final-newline t)
+
+;; Stop at the end of the file, not just add lines
+(setq next-line-add-newlines nil)
--- /dev/null
+--- emacs-20.6.orig/src/coding.h Fri May 19 23:20:52 2000
++++ emacs-20.6/src/coding.h Fri May 19 22:58:43 2000
+@@ -495,6 +495,9 @@
+ s2 = c2 + 0x7E; \
+ } while (0)
+
++/* Must declare this, so that we don't lose high 4 bytes on 64-bit machines. */
++extern Lisp_Object code_convert_string_norecord ();
++
+ /* Encode the file name NAME using the specified coding system
+ for file names, if any. */
+ #define ENCODE_FILE(name) \
+
--- /dev/null
+--- emacs-20.6/src/widget.c.foo Fri Jun 2 16:13:23 2000
++++ emacs-20.6/src/widget.c Fri Jun 2 16:12:00 2000
+@@ -538,7 +538,7 @@
+ XtNheightInc, ch,
+ XtNminWidth, base_width + min_cols * cw,
+ XtNminHeight, base_height + min_rows * ch,
+- 0);
++ NULL);
+ }
+
+ static void
+--- emacs-20.6/lwlib/lwlib.c.foo Fri Jun 2 15:59:56 2000
++++ emacs-20.6/lwlib/lwlib.c Fri Jun 2 16:00:26 2000
+@@ -29,6 +29,7 @@
+ #include "lwlib-utils.h"
+ #include <X11/StringDefs.h>
+
++#include <stdlib.h>
+ #ifdef __osf__
+ #include <string.h>
+ #include <stdlib.h>
--- /dev/null
+diff -urN emacs-20.6/config.guess emacs-20.6-lia/config.guess
+--- emacs-20.6/config.guess Wed Jul 14 09:49:28 1999
++++ emacs-20.6-lia/config.guess Sun Mar 5 22:53:50 2000
+@@ -638,6 +638,7 @@
+ case "$ld_supported_emulations" in
+ i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;;
+ i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;;
++ elf64_ia64) echo "${UNAME_MACHINE}-pc-linux" ; exit 0 ;;
+ sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
+ armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
+ m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
+diff -urN emacs-20.6/config.sub emacs-20.6-lia/config.sub
+--- emacs-20.6/config.sub Wed Jul 14 09:49:25 1999
++++ emacs-20.6-lia/config.sub Sun Mar 5 22:52:33 2000
+@@ -167,6 +167,7 @@
+ | 580 | i960 | h8300 \
+ | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
+ | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \
++ | ia64 \
+ | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
+ | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
+ | mips64orion | mips64orionel | mipstx39 | mipstx39el \
+@@ -185,6 +186,10 @@
+ i[34567]86)
+ basic_machine=$basic_machine-pc
+ ;;
++ ia64)
++ basic_machine=$basic_machine-pc
++ ;;
++
+ # Object if more than one company name word.
+ *-*-*)
+ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+@@ -198,6 +203,7 @@
+ | xmp-* | ymp-* \
+ | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
+ | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \
++ | ia64-* \
+ | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
+ | clipper-* | orion-* \
+ | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
+diff -urN emacs-20.6/configure.in emacs-20.6-lia/configure.in
+--- emacs-20.6/configure.in Sat Feb 26 04:07:02 2000
++++ emacs-20.6-lia/configure.in Sun Mar 5 22:42:57 2000
+@@ -928,6 +928,11 @@
+ machine=wicat opsys=usg5-2
+ ;;
+
++ ## IA-64
++ ia64*-*-linux* )
++ machine=ia64 opsys=gnu-linux
++ ;;
++
+ ## Intel 386 machines where we don't care about the manufacturer
+ i[3456]86-*-* )
+ machine=intel386
+diff -urN emacs-20.6/src/m/ia64.h emacs-20.6-lia/src/m/ia64.h
+--- emacs-20.6/src/m/ia64.h Wed Dec 31 16:00:00 1969
++++ emacs-20.6-lia/src/m/ia64.h Sun Mar 5 22:42:57 2000
+@@ -0,0 +1,210 @@
++/* machine description file for the IA-64 architecture.
++ Copyright (C) 1999 Free Software Foundation, Inc.
++ Contributed by David Mosberger <davidm@hpl.hp.com>
++
++This file is part of GNU Emacs.
++
++GNU Emacs is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 1, or (at your option)
++any later version.
++
++GNU Emacs is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GNU Emacs; see the file COPYING. If not, write to
++the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++Boston, MA 02111-1307, USA. */
++
++
++/* The following line tells the configuration script what sort of
++ operating system this machine is likely to run.
++ USUAL-OPSYS="note"
++
++NOTE-START
++Use -opsystem=linux
++NOTE-END
++
++*/
++
++#define BITS_PER_LONG 64
++#define BITS_PER_EMACS_INT 64
++
++/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
++ is the most significant byte. */
++
++#undef WORDS_BIG_ENDIAN
++
++/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
++ * group of arguments and treat it as an array of the arguments. */
++
++#define NO_ARG_ARRAY
++
++/* Define WORD_MACHINE if addresses and such have
++ * to be corrected before they can be used as byte counts. */
++
++/* #define WORD_MACHINE */
++
++/* Now define a symbol for the cpu type, if your compiler
++ does not define it automatically:
++ Ones defined so far include vax, m68000, ns16000, pyramid,
++ orion, tahoe, APOLLO and many others */
++
++/* __ia64__ defined automatically */
++
++
++/* Use type EMACS_INT rather than a union, to represent Lisp_Object */
++/* This is desirable for most machines. */
++
++#define NO_UNION_TYPE
++
++/* Define the type to use. */
++#define EMACS_INT long
++#define EMACS_UINT unsigned long
++#define SPECIAL_EMACS_INT
++
++/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
++ the 24-bit bit field into an int. In other words, if bit fields
++ are always unsigned.
++
++ If you use NO_UNION_TYPE, this flag does not matter. */
++
++#define EXPLICIT_SIGN_EXTEND
++
++/* Data type of load average, as read out of kmem. */
++
++#define LOAD_AVE_TYPE long
++
++/* Convert that into an integer that is 100 for a load average of 1.0 */
++
++#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
++
++/* Define CANNOT_DUMP on machines where unexec does not work.
++ Then the function dump-emacs will not be defined
++ and temacs will do (load "loadup") automatically unless told otherwise. */
++#if 0
++#define CANNOT_DUMP
++#endif
++
++/* Define VIRT_ADDR_VARIES if the virtual addresses of
++ pure and impure space as loaded can vary, and even their
++ relative order cannot be relied on.
++
++ Otherwise Emacs assumes that text space precedes data space,
++ numerically. */
++
++/* #define VIRT_ADDR_VARIES */
++
++/* Define C_ALLOCA if this machine does not support a true alloca
++ and the one written in C should be used instead.
++ Define HAVE_ALLOCA to say that the system provides a properly
++ working alloca function and it should be used.
++ Define neither one if an assembler-language alloca
++ in the file alloca.s should be used. */
++
++#define HAVE_ALLOCA
++
++/* Define the following if GNU malloc and the relocating allocator do
++ not work together with X. */
++
++/* #define SYSTEM_MALLOC */
++
++/* Define NO_REMAP if memory segmentation makes it not work well
++ to change the boundary between the text section and data section
++ when Emacs is dumped. If you define this, the preloaded Lisp
++ code will not be sharable; but that's better than failing completely. */
++
++/* #define NO_REMAP */
++
++/* Some really obscure 4.2-based systems (like Sequent DYNIX)
++ * do not support asynchronous I/O (using SIGIO) on sockets,
++ * even though it works fine on tty's. If you have one of
++ * these systems, define the following, and then use it in
++ * config.h (or elsewhere) to decide when (not) to use SIGIO.
++ *
++ * You'd think this would go in an operating-system description file,
++ * but since it only occurs on some, but not all, BSD systems, the
++ * reasonable place to select for it is in the machine description
++ * file.
++ */
++
++/* #undef NO_SOCK_SIGIO */
++
++#ifdef __ELF__
++#undef UNEXEC
++#define UNEXEC unexelf.o
++#endif
++
++#define PNTR_COMPARISON_TYPE unsigned long
++
++/* On the 64 bit architecture, we can use 60 bits for addresses */
++
++#define VALBITS 60
++
++/* This definition of MARKBIT is necessary because of the comparison of
++ ARRAY_MARK_FLAG and MARKBIT in an #if in lisp.h, which cpp doesn't like. */
++
++#define MARKBIT 0x8000000000000000L
++
++/* Define XINT and XUINT so that they can take arguments of type int */
++
++#define XINT(a) (((long) (a) << (BITS_PER_LONG - VALBITS)) >> (BITS_PER_LONG - VALBITS))
++#define XUINT(a) ((long) (a) & VALMASK)
++
++/* Declare malloc and realloc in a way that is clean.
++ But not in makefiles! */
++
++#ifndef NOT_C_CODE
++/* We need these because pointers are larger than the default ints. */
++# if !defined(__NetBSD__) && !defined(__OpenBSD__)
++# include <alloca.h>
++# else
++# include <stdlib.h>
++# endif
++
++/* Hack alert! For reasons unknown to mankind the string.h file insists
++ on defining bcopy etc. as taking char pointers as arguments. With
++ Emacs this produces an endless amount of warning which are harmless,
++ but tends to flood the real errors. This hack works around this problem
++ by not prototyping. */
++#define bcopy string_h_bcopy
++#define bzero string_h_bzero
++#define bcmp string_h_bcmp
++#include <string.h>
++#undef bcopy
++#undef bzero
++#undef bcmp
++
++/* We need to prototype these for the lib-src programs even if we don't
++ use the system malloc for the Emacs proper. */
++#ifdef _MALLOC_INTERNAL
++/* These declarations are designed to match the ones in gmalloc.c. */
++#if defined (__STDC__) && __STDC__
++extern void *malloc (), *realloc (), *calloc ();
++#else
++extern char *malloc (), *realloc (), *calloc ();
++#endif
++#else /* not _MALLOC_INTERNAL */
++extern void *malloc (), *realloc (), *calloc ();
++#endif /* not _MALLOC_INTERNAL */
++
++extern long *xmalloc (), *xrealloc ();
++
++#ifdef REL_ALLOC
++#ifndef _MALLOC_INTERNAL
++/* "char *" because ralloc.c defines it that way. gmalloc.c thinks it
++ is allowed to prototype these as "void *" so we don't prototype in
++ that case. You're right: it stinks! */
++extern char *r_alloc (), *r_re_alloc ();
++extern void r_alloc_free ();
++#endif /* not _MALLOC_INTERNAL */
++#endif /* REL_ALLOC */
++
++#endif /* not NOT_C_CODE */
++
++#define DATA_SEG_BITS 0x6000000000000000
++
++#define HAVE_TEXT_START
--- /dev/null
+diff -uNr emacs-20.6.orig/src/keyboard.c emacs-20.6/src/keyboard.c
+--- emacs-20.6.orig/src/keyboard.c Thu May 4 11:31:08 2000
++++ emacs-20.6/src/keyboard.c Thu May 4 11:37:56 2000
+@@ -84,9 +84,9 @@
+
+ #ifdef HAVE_WINDOW_SYSTEM
+ /* Make all keyboard buffers much bigger when using X windows. */
+-#define KBD_BUFFER_SIZE 4096
++#define KBD_BUFFER_SIZE 16384
+ #else /* No X-windows, character input */
+-#define KBD_BUFFER_SIZE 256
++#define KBD_BUFFER_SIZE 16384
+ #endif /* No X-windows */
+
+ /* Following definition copied from eval.c */
--- /dev/null
+--- emacs-20.3/src/Makefile.in.linkscr Fri Feb 26 02:55:20 1999
++++ emacs-20.3/src/Makefile.in Fri Feb 26 03:00:38 1999
+@@ -840,10 +840,17 @@
+ #define MAKE_PARALLEL
+ #endif
+
++/* On the alpha the elf dumper is kind of broken... */
++#if defined(__linux__) && defined(__alpha__)
++LINK_SCRIPT = -Wl,-T,${srcdir}/elf64alpha.x
++#else
++LINK_SCRIPT =
++#endif /* alpha linux */
++
+ temacs: MAKE_PARALLEL $(LOCALCPP) $(STARTFILES) stamp-oldxmenu ${obj} ${otherobj} OBJECTS_SYSTEM OBJECTS_MACHINE prefix-args
+ $(LD) YMF_PASS_LDFLAGS (${STARTFLAGS} ${ALL_LDFLAGS}) \
+ -o temacs ${STARTFILES} ${obj} ${otherobj} \
+- OBJECTS_SYSTEM OBJECTS_MACHINE ${LIBES}
++ OBJECTS_SYSTEM OBJECTS_MACHINE ${LIBES} $(LINK_SCRIPT)
+
+ /* We don't use ALL_LDFLAGS because LD_SWITCH_SYSTEM and LD_SWITCH_MACHINE
+ often contain options that have to do with using Emacs's crt0,
+--- emacs-20.3/src/elf64alpha.x.linkscr Fri Feb 26 03:01:46 1999
++++ emacs-20.3/src/elf64alpha.x Fri Feb 26 02:54:31 1999
+@@ -0,0 +1,130 @@
++OUTPUT_FORMAT("elf64-alpha", "elf64-alpha", "elf64-alpha")
++OUTPUT_ARCH(alpha)
++ENTRY(__start)
++SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib);
++SEARCH_DIR(/usr/alphaev5-unknown-linux-gnu/lib);
++
++SECTIONS
++{
++ /* Read-only sections, merged into text segment: */
++ . = 0x120000000 + SIZEOF_HEADERS;
++ .interp : { *(.interp) }
++ .hash : { *(.hash) }
++ .dynsym : { *(.dynsym) }
++ .dynstr : { *(.dynstr) }
++ .gnu.version : { *(.gnu.version) }
++ .gnu.version_d : { *(.gnu.version_d) }
++ .gnu.version_r : { *(.gnu.version_r) }
++ .rel.text :
++ { *(.rel.text) *(.rel.gnu.linkonce.t*) }
++ .rela.text :
++ { *(.rela.text) *(.rela.gnu.linkonce.t*) }
++ .rel.data :
++ { *(.rel.data) *(.rel.gnu.linkonce.d*) }
++ .rela.data :
++ { *(.rela.data) *(.rela.gnu.linkonce.d*) }
++ .rel.rodata :
++ { *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
++ .rela.rodata :
++ { *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
++ .rel.got : { *(.rel.got) }
++ .rela.got : { *(.rela.got) }
++ .rel.ctors : { *(.rel.ctors) }
++ .rela.ctors : { *(.rela.ctors) }
++ .rel.dtors : { *(.rel.dtors) }
++ .rela.dtors : { *(.rela.dtors) }
++ .rel.init : { *(.rel.init) }
++ .rela.init : { *(.rela.init) }
++ .rel.fini : { *(.rel.fini) }
++ .rela.fini : { *(.rela.fini) }
++ .rel.bss : { *(.rel.bss) }
++ .rela.bss : { *(.rela.bss) }
++ .rel.plt : { *(.rel.plt) }
++ .rela.plt : { *(.rela.plt) }
++ .init : { *(.init) } =0x47ff041f
++ .text :
++ {
++ *(.text)
++ *(.stub)
++ /* .gnu.warning sections are handled specially by elf32.em. */
++ *(.gnu.warning)
++ *(.gnu.linkonce.t*)
++ } =0x47ff041f
++ _etext = .;
++ PROVIDE (etext = .);
++ .fini : { *(.fini) } =0x47ff041f
++ .rodata : { *(.rodata) *(.gnu.linkonce.r*) }
++ .rodata1 : { *(.rodata1) }
++ .reginfo : { *(.reginfo) }
++ /* Adjust the address for the data segment. We want to adjust up to
++ the same address within the page on the next page up. */
++ . = ALIGN(0x100000) + (. & (0x100000 - 1));
++ .ctors :
++ {
++ *(.ctors)
++ }
++ .dtors :
++ {
++ *(.dtors)
++ }
++ .plt : { *(.plt) }
++ .got : { *(.got.plt) *(.got) }
++ .dynamic : { *(.dynamic) }
++ .data :
++ {
++ *(.data)
++ *(.sdata)
++ *(.gnu.linkonce.d*)
++ CONSTRUCTORS
++ }
++ /* We want the small data sections together, so single-instruction offsets
++ can access them all, and initialized data all before uninitialized, so
++ we can shorten the on-disk segment size. */
++ _edata = .;
++ PROVIDE (edata = .);
++ __bss_start = .;
++ .bss :
++ {
++ *(.sbss) *(.scommon)
++ *(.dynbss)
++ *(.bss)
++ *(COMMON)
++ }
++ . = ALIGN(64 / 8);
++ _end = . ;
++ PROVIDE (end = .);
++ /* Stabs debugging sections. */
++ .stab 0 : { *(.stab) }
++ .stabstr 0 : { *(.stabstr) }
++ .stab.excl 0 : { *(.stab.excl) }
++ .stab.exclstr 0 : { *(.stab.exclstr) }
++ .stab.index 0 : { *(.stab.index) }
++ .stab.indexstr 0 : { *(.stab.indexstr) }
++ .comment 0 : { *(.comment) }
++ /* DWARF debug sections.
++ Symbols in the DWARF debugging sections are relative to the beginning
++ of the section so we begin them at 0. */
++ /* DWARF 1 */
++ .debug 0 : { *(.debug) }
++ .line 0 : { *(.line) }
++ /* GNU DWARF 1 extensions */
++ .debug_srcinfo 0 : { *(.debug_srcinfo) }
++ .debug_sfnames 0 : { *(.debug_sfnames) }
++ /* DWARF 1.1 and DWARF 2 */
++ .debug_aranges 0 : { *(.debug_aranges) }
++ .debug_pubnames 0 : { *(.debug_pubnames) }
++ /* DWARF 2 */
++ .debug_info 0 : { *(.debug_info) }
++ .debug_abbrev 0 : { *(.debug_abbrev) }
++ .debug_line 0 : { *(.debug_line) }
++ .debug_frame 0 : { *(.debug_frame) }
++ .debug_str 0 : { *(.debug_str) }
++ .debug_loc 0 : { *(.debug_loc) }
++ .debug_macinfo 0 : { *(.debug_macinfo) }
++ /* SGI/MIPS DWARF 2 extensions */
++ .debug_weaknames 0 : { *(.debug_weaknames) }
++ .debug_funcnames 0 : { *(.debug_funcnames) }
++ .debug_typenames 0 : { *(.debug_typenames) }
++ .debug_varnames 0 : { *(.debug_varnames) }
++ /* These must appear regardless of . */
++}
--- /dev/null
+--- lisp/startup.el.locale.alias Fri Feb 11 16:39:31 2000
++++ lisp/startup.el Fri Feb 11 16:40:28 2000
+@@ -332,14 +332,7 @@
+ :group 'auto-save)
+
+ (defvar locale-translation-file-name
+- (let ((files '("/usr/lib/X11/locale/locale.alias" ; e.g. X11R6.4
+- "/usr/X11R6/lib/X11/locale/locale.alias" ; e.g. RedHat 4.2
+- "/usr/openwin/lib/locale/locale.alias" ; e.g. Solaris 2.6
+- ;;
+- ;; The following name appears after the X-related names above,
+- ;; since the X-related names are what X actually uses.
+- "/usr/share/locale/locale.alias" ; GNU/Linux sans X
+- )))
++ (let ((files '("/usr/share/locale/locale.alias")))
+ (while (and files (not (file-exists-p (car files))))
+ (setq files (cdr files)))
+ (car files))
--- /dev/null
+--- emacs-20.5/lisp/loadup.el.loadup Fri Feb 11 16:22:32 2000
++++ emacs-20.5/lisp/loadup.el Fri Feb 11 16:24:23 2000
+@@ -198,7 +199,9 @@
+ (if (memq system-type '(ms-dos windows-nt))
+ (setq name (expand-file-name
+ (if (fboundp 'x-create-frame) "DOC-X" "DOC") "../etc"))
+- (setq name (concat (expand-file-name "../etc/DOC-") name))
++ (setq name (concat (expand-file-name
++ (if (fboundp 'x-create-frame) "../etc/DOC-X-"
++ "../etc/DOC-")) name))
+ (if (file-exists-p name)
+ (delete-file name))
+ (copy-file (expand-file-name "../etc/DOC") name t))
--- /dev/null
+diff -uNr emacs-20.7.orig/etc/emacs.1 emacs-20.7/etc/emacs.1
+--- emacs-20.7.orig/etc/emacs.1 Mon Apr 22 14:48:40 1996
++++ emacs-20.7/etc/emacs.1 Tue Jul 25 12:19:57 2000
+@@ -180,13 +180,6 @@
+ When you specify a font, be sure to put a space between the
+ switch and the font name.
+ .TP
+-.BI \-b " pixels"
+-Set the
+-.I Emacs
+-window's border width to the number of pixels specified by
+-.I pixels.
+-Defaults to one pixel on each side of the window.
+-.TP
+ .BI \-ib " pixels"
+ Set the window's internal border width to the number of pixels specified
+ by
--- /dev/null
+--- emacs-20.4/lisp/mail/mh-utils.el.nmh Thu Jul 22 17:32:51 1999
++++ emacs-20.4/lisp/mail/mh-utils.el Thu Jul 22 17:38:01 1999
+@@ -606,6 +606,7 @@
+ (or (mh-path-search exec-path "inc")
+ (mh-path-search '("/usr/local/bin/mh/"
+ "/usr/local/mh/"
++ "/usr/bin/" ;Red Hat GNU/Linux
+ "/usr/bin/mh/" ;Ultrix 4.2
+ "/usr/new/mh/" ;Ultrix <4.2
+ "/usr/contrib/mh/bin/" ;BSDI
+@@ -617,7 +618,7 @@
+ (let ((mh-base mh-progs))
+ (while (let ((dir-name (file-name-nondirectory
+ (directory-file-name mh-base))))
+- (or (string= "mh" dir-name)
++ (or (string= "nmh" dir-name)
+ (string= "bin" dir-name)))
+ (setq mh-base
+ (file-name-directory (directory-file-name mh-base))))
+@@ -629,7 +630,7 @@
+ ;; components, then look for lib/mh or mh/lib.
+ (or (mh-path-search
+ (mapcar (lambda (p) (expand-file-name p mh-base))
+- '("lib/mh" "etc/nmh" "/etc/nmh" "mh/lib"))
++ '("lib/nmh" "etc/nmh" "/etc/nmh" "mh/lib"))
+ "components"
+ 'file-exists-p))))
+ (or (and mh-lib-progs
+@@ -637,7 +638,7 @@
+ (setq mh-lib-progs
+ (or (mh-path-search
+ (mapcar (lambda (p) (expand-file-name p mh-base))
+- '("lib/mh" "libexec/nmh" "lib/nmh" "mh/lib"))
++ '("lib/nmh" "libexec/nmh" "lib/mh" "mh/lib"))
+ "mhl")
+ (mh-path-search '("/usr/local/bin/mh/") "mhl")
+ (mh-path-search exec-path "mhl") ;unlikely
--- /dev/null
+;; Aspell is a replacement for ispell
+(setq-default ispell-program-name "aspell")
+
+;; Add python support
+(setq auto-mode-alist
+ (cons '("\\.py$" . python-mode) auto-mode-alist))
+(setq interpreter-mode-alist
+ (cons '("python" . python-mode)
+ interpreter-mode-alist))
--- /dev/null
+--- emacs-20.3/lib-src/rcs2log.tmprace Mon Sep 28 12:58:46 1998
++++ emacs-20.3/lib-src/rcs2log Mon Sep 28 13:02:15 1998
+@@ -300,8 +300,8 @@
+ esac
+ esac
+
+-llogout=$TMPDIR/rcs2log$$l
+-rlogout=$TMPDIR/rcs2log$$r
++llogout="`/bin/mktemp $TMPDIR/rcs2log.l.XXXXXX`"
++rlogout="`/bin/mktemp $TMPDIR/rcs2log.r.XXXXXX`"
+ trap exit 1 2 13 15
+ trap "rm -f $llogout $rlogout; exit 1" 0
+
--- /dev/null
+diff -uNr emacs-20.7.orig/configure emacs-20.7/configure
+--- emacs-20.7.orig/configure Mon Jun 12 16:05:56 2000
++++ emacs-20.7/configure Tue Jun 13 14:10:43 2000
+@@ -3699,7 +3699,7 @@
+ #include "confdefs.h"
+
+ #include <X11/Intrinsic.h>
+-#include <X11/Xaw/Simple.h>
++#include <X11/Xaw3d/Simple.h>
+ int main() {
+
+ ; return 0; }
+diff -uNr emacs-20.7.orig/configure.in emacs-20.7/configure.in
+--- emacs-20.7.orig/configure.in Mon Jun 5 11:42:49 2000
++++ emacs-20.7/configure.in Tue Jun 13 14:10:43 2000
+@@ -1551,7 +1551,7 @@
+ AC_CACHE_VAL(emacs_cv_x11_version_5_with_xaw,
+ AC_TRY_LINK([
+ #include <X11/Intrinsic.h>
+-#include <X11/Xaw/Simple.h>],
++#include <X11/Xaw3d/Simple.h>],
+ [],
+ emacs_cv_x11_version_5_with_xaw=yes,
+ emacs_cv_x11_version_5_with_xaw=no))
+diff -uNr emacs-20.7.orig/src/Makefile.in emacs-20.7/src/Makefile.in
+--- emacs-20.7.orig/src/Makefile.in Mon Apr 26 01:19:42 1999
++++ emacs-20.7/src/Makefile.in Tue Jun 13 14:10:43 2000
+@@ -329,7 +329,7 @@
+ #ifdef USE_X_TOOLKIT
+ #define @X_TOOLKIT_TYPE@
+ #if defined (LUCID) || defined (ATHENA)
+-LIBW= -lXaw
++LIBW= -lXaw3d
+ #endif
+ #ifdef MOTIF
+ #if defined (HAVE_MOTIF_2_1) && defined (HAVE_LIBXP)
--- /dev/null
+[Desktop Entry]
+Name=Emacs
+Name[bg]=Emacs
+Name[ca]=Emacs
+Name[cs]=Emacs
+Name[da]=Emacs
+Name[de]=Emacs
+Name[el]=Emacs
+Name[es]=Emacs
+Name[et]=Emacs
+Name[eu]=Emacs
+Name[fi]=Emacs
+Name[fr]=Emacs
+Name[ga]=Emacs
+Name[gl]=Emacs
+Name[it]=Emacs
+Name[ja]=Emacs
+Name[ko]=À̸ƽº
+Name[nl]=Emacs
+Name[no]=Emacs
+Name[pl]=Emacs
+Name[pt]=Emacs
+Name[pt_BR]=Emacs
+Name[ru]=Emacs
+Name[sv]=Emacs
+Name[tr]=Emacs
+Name[uk]=Emacs
+Name[wa]=Emacs
+Name[zh_CN.GB2312]=Emacs
+Name[zh_TW.Big5]=Emacs
+Comment=Emacs text editor
+Comment[bg]=Emacs òåêñòîâ ðåäàêòîð
+Comment[ca]=L'editor de text Emacs
+Comment[cs]=Textový editor Emacs
+Comment[da]=Emacs tekstbehandleren
+Comment[de]=Der Texteditor Emacs
+Comment[el]=ÅðåîåñãáóôÞò êåéìÝíïõ Emacs
+Comment[es]=Editor de textos Emacs
+Comment[et]=tekstiredaktor Emacs
+Comment[eu]=Emacs testu editorea
+Comment[fi]=Emacs-editori
+Comment[fr]=Editeur de texte Emacs
+Comment[ga]=Eagarthóir Teacs Emacs
+Comment[gl]=Editor de texto Emacs
+Comment[hu]=Emacs szövegszerkesztõ
+Comment[it]=Editor di testo Emacs
+Comment[ja]=Emacs¥Æ¥¥¹¥È¥¨¥Ç¥£¥¿
+Comment[ko]=À̸ƽº ¹®¼ ÆíÁý±â
+Comment[nl]=Emacs tekst editor
+Comment[no]=Teksteditoren Emacs
+Comment[pl]=Edytor tekstu Emacs
+Comment[pt]=Editor de texto Emacs
+Comment[pt_BR]=Editor de texto Emacs
+Comment[ru]=ôÅËÓÔÏ×ÙÊ ÒÅÄÁËÔÏÒ Emacs
+Comment[sv]=Emacs texteditor
+Comment[tr]=Emacs metin editörü
+Comment[uk]=ôÅËÓÔÏ×ÉÊ ÒÅÄÁËÔÏÒ
+Comment[wa]=L' aspougneu di tekse Emacs
+Comment[zh_CN.GB2312]=Emacs ÎÄ×ֱ༩Æ÷
+Comment[zh_TW.Big5]=Emacs ¤å¦r½s½r¾¹
+TryExec=emacs
+Exec=emacs
+Icon=emacs.png
+Terminal=0
+Type=Application