International Ispell version 3.1 - Amiga Patch (level 4) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Introduction ~~~~~~~~~~~~ This is a Amiga patch of the International Ispell version 3.1. There is a few differences between this patch and the Ispell 3.3ljr package: * 3.3ljr is (AFAIK) based on Ispell version 2, thus not reflecting the evolution of international Ispell since 1990. * This patch makes only a few changes to the original UN*X code and should therefore be compatible with Ispell releases to come (i.e. there is no "porting" needed - It will be possible to simply get the newest release and compile!). * This patch compiles with GCC and needs ixemul.library - there is a much bigger overhead compared with 3.3ljr! * The EXTENDEDFILECHECK Arexx command has been removed. You should read the "README" file - this file only covers a few Amiga specific areas. Archives ~~~~~~~~ This Ispell patch will be integrated into the official Ispell source tree from version 3.1.20 or so. Until then I personally release the source and binaries in two archives: ispell31p3src.lha - Original ispell-3.1.18 source archive with patch applied. Contains all needed sources for rebuilding ispell binaries and dictionaries. ispell31p3bin.lha - Contains binaries compiled for Amiga, docs and an English dictionary. Installation ~~~~~~~~~~~~ Dictionaries are to be put in "ispell:lib/" and to ease upgrading you should put the binaries in "ispell:bin". Add the "ispell:bin" to your path. Private dictionaries will by default be created in "ispell:lib/", named after the language e.g. '.ispell_english'. You may specify an absolute path/name for the dictionary with the -p option (remember; no space after the 'p', e.g. -pMyDictionary). Several people complained about problems with the private dictionary in patch level 2. These were caused by the ixemul library. The problems should be solved by setting the HOME environment variable. Apparently this is not enough for all configurations so Jörgen Grahn made a patch which removes this dependency of the HOME variable. If you think this is a bad idea (i.e. if you are using multi-user FS) please let me know! Usage & Documentation ~~~~~~~~~~~~~~~~~~~~~ Consult the man pages for general Ispell usage. You should know that I have removed the '-vv' option - if you need compile info check out the source archive. The ARexx interface is more or less the same as the one found in 3.3ljr ispell. Consult the file "doc/AmigaArexx.doc" for a description of the Arexx interface. Since the operation of Ispell has changed from the days of 3.3ljr Ispell the old Ispell interfaces are not up-to-date. They may need a little patching themselves to be usable with Ispell 3.1.18. I included them to give you an idea of how to make an interface Ispell. If you use FrexxEd there should be an "FrexxEd - Ispell" interface available from next FrexxEd release. For Amiga users without knowledge of man/groff and the like, I have included the man pages in "readable" form in Amiga/doc. If your reader can not understand the style codes, you can remove them with the type command: "type file > file.raw" GCC compilation ~~~~~~~~~~~~~~~ First remove the suffix ".Amiga" from the Amiga specific versions of local.h and the Makefile. Then simply "make programs". I was able to compile all the programs in the Ispell package without errors or warnings. The dictionaries are another story though; I had to "compile" them by hand without the use of make (run through the Makefile yourself). All changes made in the original UN*X code are marked by a "#if(n)def AMIGA" condition. Dictionary Generation ~~~~~~~~~~~~~~~~~~~~~ Get the source archive and find out how by reading the languages/README file. If you want to generate any of the dictionaries in the source archive you should do it by hand as the Makefile does not work on Amigas (doesn't on mine anyway). Consult the file "doc/BuildDictionary.doc" for two examples of building Ispell dictionaries. As this may seem a bit tedious for the average user I ask anyone who successfully generate a dictionary file for a language to upload it to AmiNet and possibly notify Fred Fish! History ~~~~~~~ 29.06.95 (patch level 1) * All the server commands seem to be fully functional, but they have not been tested extensively :( * There seems to be a memory loss of 440 bytes at each invokation - I think it is a problem with ixemul or ispell as it occurs even if the ARexx server is not started. I have not checked into it! 03.07.95 (patch level 2) * Added server command "ACCEPT". * The -p and -d options now use "correct" Amiga file name conventions. 21.09.95 (patch level 3) * Added documentation on building dictionaries. * Added a few patches by Jörgen Grahn (I have lost your Email address!) - The MASKBITS increased to 128 - you can not use the old hash file, sorry! - Removed the HOME environment variable dependency. 25.08.95 (patch level 4) * Fix a bug in the REXX interface while handling french dictionary Legal blurb ~~~~~~~~~~~ International Ispell Version 3.1.18 01/14/95 Copyright (c), 1983, by Pace Willisson International version Copyright (c) 1987, 1988, 1990, 1991, 1992, 1993, by Geoff Kuenning, Granada Hills, CA. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All modifications to the source code must be clearly marked as such. Binary redistributions based on modified source code must be clearly marked as modified versions in the documentation and/or other materials provided with the distribution. 4. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Geoff Kuenning and other unpaid contributors. 5. The name of Geoff Kuenning may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ~ Amiga Patch 4 (25.08.98) by Éric BURGHARD - bug fix, minor change. Amiga Patch 3 (21.09.95) by Jesper Skov, based on work by Loren J. Rittle. Additional Amiga changes by Jörgen Grahn. This patch is based on the ARexx interface found in ISpell Version 3.3LJR, copyright (C) 1990, 1991, 1992 Loren J. Rittle. The documentation files are also from the ljr archive. The ARexx interface is based on the MinRexx package by Tom Rokicki of Radical Eye Software. Also included in this archive is the interfaces supplied by various people. Excerpt from the LJR readme: Thanks to Mike Meyer for the mg interface to ISpell. Thanks to Willy G. J. Langeveld for enhanced TurboText interface to ISpell. Thanks to Christopher A. Wichura for the TurboText interface to GUISpell. Thanks to Steve Koren for the GNU EMACS interface to ISpell. / Jesper Skov Sallingsundvej 47 st th DK-9220 Aalbog Ø Denmark Email: jskov@iesd.auc.dk Éric BURGHARD 240 Avenue de LODÈVE 34080 Montpellier FRANCE Email: eburghar@online.worldnet.fr