Configuring Ispell for Windows NT and NTEmacs

Altamir Dias (dias@vt.edu) has kindly provided the following recipe for configuring the TUE version of ispell for Windows 95/98:

  1. Unzip the packaged DOS/Win32 version of Ispell-3.1.20 in C:\ISPELL;
  2. Change path in the autoexec.bat so that it includes SET PATH=%PATH%;C:\ISPELL\BIN;
  3. Build your native language dictionary or others that your currently use:
    1. Download two files: (for ex: : english.med and english.aff)
    2. Open a Ms-Dos windows and build the file that will be used by Ispell:

      buildhas english.med english.aff english.has

    3. put english.has in c:\ispell\lib
    4. repeat the steps above for any other languages you want.

    Open your emacs 20.3.1 and enjoy spelling.

    P.S.: I also used the procedure for GNU Emacs 19.34.6 (i386-*-nt4.0) and there I replaced the files Ispell.el and Ispell4.el in the lisp directory with that of 20.3.1 version. It works very well.


    Angus Duggan also has some hints:

    Hello,

    I thought you might be interested that I've compiled and run ispell 3.1 under Windows NT and emacs 19.34 on NT, using the Cygnus cygwin32 library. There are a couple of tweaks necessary, but otherwise it's relatively straightforward.

    1. iwhich sets the path to /usr/bin:/bin, which is inappropriate for NT. Commenting this line out and not installing the build utils globally sorted this problem.
    2. Munchlist.X contains TDIR=${TMPDIR-/usr/tmp}, which sets the default directory to /usr/tmp, which isn't appropriate. My guess is that this should be replaced in the same way as SORTTMP. Alternatively, TMPDIR should be set while building.
    3. I had to get GNU termcap 1.3 and install libtermcap before I could compile ispell. This needs to be configured in strict ANSI mode:
      	CC="gcc -D_STRICT_ANSI" ./configure
      
    4. In local.h, I defined USG, and defined CC to "gcc -D_STRICT_ANSI" for the same reason as termcap; gcc's string.h contains bcopy/bzero prototypes which get macro-substituted and fail to compile otherwise. I defined YACC to be "bison -y". I created an empty /usr/dict/words, because the dictionary building didn't work when I had no EXTRADICT. I set TERMLIB to add the directory where I installed GNU libtermcap to the link path. I tweaked MAKE_SORTTMP to alter the default tmp directory.
    5. Ispell requires the current directory on the PATH while building, to find iwhich et al. You might want to make these explicitly located.

    Configuring Ispell for Windows 2000

    Guy-Armand Kamendje provided the following instructions for installing ispell on Windows 2000:

    This document explains how to install Ispell 3.1.20 (using the Cygwin binaries) on Windows 2000. This may also work with Window 95, Windows NT Windows Millenium edition but I have not tested it. Beside the Ispell package, two additional files mount.exe and cygwin1.dll are required. This installation worked pretty well with XEmacs 21.4.3

    1. Get a copy of the ispell cygwin binaries or (sources) (a copy may be found on ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Humblet_Pierre_A/V1.1). This port of Ispell was written by Pierre Humblet (by the way, thanks to Pierre who provided usefull information).
    2. Also get a copy of the cygwin dll (cygwin1.dll).
    3. Grab out a copy of the executable mount.exe.
    4. Untar the Ispell package in a directory of your choice; let's call it mydir. This will create a unix like directory structure (mydir/../usr/local/bin, mydir/../usr/local/lib) on your drive.
    5. Add the new created directory to your path using something like set path=mydir/../usr/local/bin;%path%
    6. Copy the cygwin1.dll in a directory of your path. Let's say /usr/local/bin.
    7. Check your installation by invoking ispell -vv in your command shell.
    8. Now use the mount utility to mount the installation directory to / (root directory in unix). The syntax is essentially mount device destination . Entering something like mount mydir/../ / will do the job if you untarred ispell in mydir/../ (note that if instead you have something like c:/usr/local/* then you should enter mount c: /) The mount utility edits your registry and lets the / (the unix root) point to your installation directory ( check HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\mounts v2V\/ the entry native should be set to your installation directory)
    9. Now we are done. Entering M-x ispell-buffer in XEmacs should correctly spell your buffer.

    Send comments to Guy-Armand Kamendje (guy-armand.kamendje@iaik.at).