summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Filelist5
-rw-r--r--runtime/doc/eval.txt22
-rw-r--r--runtime/doc/spell.txt16
-rw-r--r--runtime/doc/tags1
-rw-r--r--runtime/doc/todo.txt66
-rw-r--r--runtime/spell/README.txt929
-rw-r--r--runtime/spell/de/de_DE.diff14
-rw-r--r--runtime/spell/de/main.aap82
-rw-r--r--runtime/spell/en.ascii.splbin559946 -> 566599 bytes
-rw-r--r--runtime/spell/en.latin1.splbin561981 -> 568694 bytes
-rw-r--r--runtime/spell/en.utf-8.splbin562404 -> 569125 bytes
-rw-r--r--runtime/spell/en/en_AU.diff (renamed from src/spell/en_AU.diff)4
-rw-r--r--runtime/spell/en/en_CA.diff (renamed from src/spell/en_CA.diff)4
-rw-r--r--runtime/spell/en/en_GB.diff (renamed from src/spell/en_GB.diff)942
-rw-r--r--runtime/spell/en/en_NZ.diff (renamed from src/spell/en_NZ.diff)4
-rw-r--r--runtime/spell/en/en_US.diff (renamed from src/spell/en_US.diff)4
-rw-r--r--runtime/spell/en/main.aap232
-rw-r--r--runtime/spell/fr/fr_FR.diff (renamed from src/spell/fr_FR.diff)0
-rw-r--r--runtime/spell/fr/main.aap77
-rw-r--r--runtime/spell/he/he_IL.diff (renamed from src/spell/he_IL.diff)0
-rw-r--r--runtime/spell/he/main.aap73
-rw-r--r--runtime/spell/main.aap6
-rw-r--r--runtime/spell/nl/main.aap77
-rw-r--r--runtime/spell/nl/nl_NL.diff (renamed from src/spell/nl_NL.diff)0
-rw-r--r--runtime/spell/pl/main.aap75
-rw-r--r--runtime/spell/pl/pl_PL.diff (renamed from src/spell/pl_PL.diff)0
-rw-r--r--src/Make_mvc.mak14
-rw-r--r--src/eval.c82
-rw-r--r--src/farsi.c8
-rw-r--r--src/if_ole.cpp2
-rw-r--r--src/spell.c72
-rw-r--r--src/spell/Makefile117
-rw-r--r--src/spell/de_DE.diff24
-rw-r--r--src/version.h4
34 files changed, 1252 insertions, 1704 deletions
diff --git a/Filelist b/Filelist
index a4575c1cc..c591d544a 100644
--- a/Filelist
+++ b/Filelist
@@ -122,8 +122,6 @@ SRC_ALL2 = \
src/proto/undo.pro \
src/proto/version.pro \
src/proto/window.pro \
- src/spell/*.diff \
- src/spell/Makefile \
# source files for Unix only
@@ -684,6 +682,9 @@ LANG_GEN = \
runtime/tutor/tutor.ru.* \
runtime/tutor/tutor.zh.* \
runtime/spell/README.txt \
+ runtime/spell/??/*.diff \
+ runtime/spell/??/main.aap \
+ runtime/spell/main.aap \
# generic language files, binary
LANG_GEN_BIN = \
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 9ee13e393..9eb1ba645 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 7.0aa. Last change: 2005 Jun 29
+*eval.txt* For Vim version 7.0aa. Last change: 2005 Jul 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -241,15 +241,23 @@ the same value. >
Note about comparing lists: Two lists are considered equal if they have the
same length and all items compare equal, as with using "==". There is one
-exception: When comparing a number with a string and the string contains extra
-characters beside the number they are not equal. Example: >
- echo 4 == "4x"
+exception: When comparing a number with a string they are considered
+different. There is no automatic type conversion, as with using "==" on
+variables. Example: >
+ echo 4 == "4"
< 1 >
- echo [4] == ["4x"]
+ echo [4] == ["4"]
< 0
-This is to fix the odd behavior of == that can't be changed for backward
-compatibility reasons.
+Thus comparing Lists is more strict than comparing numbers and strings. You
+can compare simple values this way too by putting them in a string: >
+
+ :let a = 5
+ :let b = "5"
+ echo a == b
+< 1 >
+ echo [a] == [b]
+< 0
List unpack ~
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 9ccfbefb8..46d1b70da 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt* For Vim version 7.0aa. Last change: 2005 Jul 02
+*spell.txt* For Vim version 7.0aa. Last change: 2005 Jul 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -27,7 +27,7 @@ This switches on the 'spell' option and specifies to check for US English.
The words that are not recognized are highlighted with one of these:
SpellBad word not recognized |hl-SpellBad|
- SpellCap word not capatilized |hl-SpellCap|
+ SpellCap word not capitalised |hl-SpellCap|
SpellRare rare word |hl-SpellRare|
SpellLocal wrong spelling for selected region |hl-SpellLocal|
@@ -321,6 +321,10 @@ find them here:
You can also use a plain word list. The results are the same, the choice
depends on what word lists you can find.
+If you install Aap (from www.a-a-p.org) you can use the recipes in the
+runtime/spell/??/ directories. Aap will take care of downloading the files,
+apply patches needed for Vim and build the .spl file.
+
Make sure your current locale is set properly, otherwise Vim doesn't know what
characters are upper/lower case letters. If the locale isn't available (e.g.,
when using an MS-Windows codepage on Unix) add tables to the .aff file
@@ -389,7 +393,7 @@ following procedure is recommended:
4. Start Vim with the right locale and use |:mkspell| to generate the Vim
spell file.
5. Try out the spell file with ":set spell spelllang=xx" if you wrote it in
- a spell directory in 'runtimepath, or ":set spelllang=xx.enc.spl" if you
+ a spell directory in 'runtimepath', or ":set spelllang=xx.enc.spl" if you
wrote it somewhere else.
When the Myspell files are updated you can merge the differences:
@@ -436,7 +440,7 @@ highlighted. Person and company names will not appear in a dictionary, but do
appear in a word list. And some old words are rarely used while they are
common misspellings. These do appear in a dictionary but not in a word list.
-There are two formats: A straigth list of words and a list using affix
+There are two formats: A straight list of words and a list using affix
compression. The files with affix compression are used by Myspell (Mozilla
and OpenOffice.org). This requires two files, one with .aff and one with .dic
extension.
@@ -760,7 +764,7 @@ Simplistic example:
SAL C K ~
SAL K K ~
-There are a few rules and this can become quite complicated. An explantion
+There are a few rules and this can become quite complicated. An explanation
how it works can be found in the Aspell manual:
http://aspell.net/man-html/Phonetic-Code.html.
@@ -780,7 +784,7 @@ characters to another character, mapping similar sounding characters to the
same character. At the same time this does case folding. You can not have
both SAL items and simple soundfolding.
-There are two items required: one to speficy the characters that are mapped
+There are two items required: one to specify the characters that are mapped
and one that specifies the characters they are mapped to. They must have
exactly the same number of characters. Example:
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 2b19ebcb4..f231debf8 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -5148,7 +5148,6 @@ hebrew hebrew.txt /*hebrew*
hebrew.txt hebrew.txt /*hebrew.txt*
help various.txt /*help*
help-context help.txt /*help-context*
-help-tags tags 1
help-translated various.txt /*help-translated*
help-xterm-window various.txt /*help-xterm-window*
help.txt help.txt /*help.txt*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 4d0e93c4d..9d0a96691 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 02
+*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -81,9 +81,6 @@ autoload:
helpfile doc/myscript.txt
For the "helpfile" item ":helptags" is run.
-For List comparing, consider [4] and ['4'] different? (Servatius Brandt)
-Also allows strict comparing for ordinary variables.
-
Patch to alternate fold highlighting. (Anthony Iano-Fletcher, 2005 May 12)
More levels?
@@ -96,40 +93,6 @@ Awaiting response:
PLANNED FOR VERSION 7.0:
-- Spell checking todo's:
- - When making suggestions check for 'spellcapcheck' and empty line to
- figure out the word should be capitalised.
- - Distribution: Need wordlists for many languages; "language pack"
- Put them on the ftp site, ready to download. Include README for
- copyrights.
- - Work together with OpenOffice.org to update the wordlists. (Adri
- Verhoef, Aad Nales) Setup vim-spell maillist?
- - Charles Campbell asks for method to add "contained" groups to
- existing syntax items (to add @Spell).
- Add ":syntax contains {pattern} add=@Spell" command? A bit like ":syn
- cluster" but change the contains list directly for matching syntax
- items.
- - Install spell files with src/main.aap.
- Later:
- - References: MySpell library (in OpenOffice.org).
- http://spellchecker.mozdev.org/source.html
- http://whiteboard.openoffice.org/source/browse/whiteboard/lingucomponent/source/spellcheck/myspell/
- author: Kevin Hendricks <kevin.hendricks@sympatico.ca>
- - Make "en-rare" spell file? Ask Charles Campbell.
- - The English dictionaries for different regions are not consistent in
- their use of words with a dash.
- - Alternate Dutch word list at www.nederlandsewoorden.nl (use script to
- obtain). But new Myspell wordlist will come (Hagen)
- - Insert mode completion mechanism that uses the spell word lists.
- - Add hl groups to 'spelllang'?
- :set spelllang=en_us,en-rare/SpellRare,en-math/SpellMath
- More complicated: Regions with different languages? E.g., comments
- in English, strings in German (po file).
- - Implement compound words when it works for Myspell. Current idea has
- the problem that "foo/X" always allows "foofoo", there is no way to
- specify a word can only be at the start or end, or that only certain
- words combine.
-
- Support using "**" in filename for ":next", ":vimgrep", etc., so that a
directory tree can be searched.
- REFACTORING: The main() function is very long. Move parts to separate
@@ -1309,6 +1272,33 @@ User Friendlier:
window can be displayed. (Eduard)
+Spell checking:
+9 Work together with OpenOffice.org to update the wordlists. (Adri Verhoef,
+ Aad Nales) Setup vim-spell maillist?
+8 Charles Campbell asks for method to add "contained" groups to existing
+ syntax items (to add @Spell).
+ Add ":syntax contains {pattern} add=@Spell" command? A bit like ":syn
+ cluster" but change the contains list directly for matching syntax items.
+8 Install spell files with src/main.aap.
+- References: MySpell library (in OpenOffice.org).
+ http://spellchecker.mozdev.org/source.html
+ http://whiteboard.openoffice.org/source/browse/whiteboard/lingucomponent/source/spellcheck/myspell/
+ author: Kevin Hendricks <kevin.hendricks@sympatico.ca>
+8 Make "en-rare" spell file? Ask Charles Campbell.
+8 The English dictionaries for different regions are not consistent in their
+ use of words with a dash.
+8 Alternate Dutch word list at www.nederlandsewoorden.nl (use script to
+ obtain). But new Myspell wordlist will come (Hagen)
+7 Insert mode completion mechanism that uses the spell word lists.
+8 Add hl groups to 'spelllang'?
+ :set spelllang=en_us,en-rare/SpellRare,en-math/SpellMath
+ More complicated: Regions with different languages? E.g., comments
+ in English, strings in German (po file).
+8 Implement compound words when it works for Myspell. Current idea has the
+ problem that "foo/X" always allows "foofoo", there is no way to specify a
+ word can only be at the start or end, or that only certain words combine.
+
+
Diff mode:
8 Use diff mode to show the changes made in a buffer (compared to the file).
Use an unnamed buffer, like doing:
diff --git a/runtime/spell/README.txt b/runtime/spell/README.txt
index ff56acc25..8ea5272f0 100644
--- a/runtime/spell/README.txt
+++ b/runtime/spell/README.txt
@@ -7,929 +7,6 @@ Copyright
The files used as input for the spell files come from the OpenOffice.org spell
files. Most of them go under the LGPL or a similar license.
-Copyright notices for specific languages follow. Note that the files for
-different regions are merged, both to save space and to make it possible to
-highlight words for another region different from bad words.
-
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-en_US
-
-20040623 release.
---
-This dictionary is based on a subset of the original
-English wordlist created by Kevin Atkinson for Pspell
-and Aspell and thus is covered by his original
-LGPL license. The affix file is a heavily modified
-version of the original english.aff file which was
-released as part of Geoff Kuenning's Ispell and as
-such is covered by his BSD license.
-
-Thanks to both authors for there wonderful work.
-
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-en_AU
-
-This dictionary was based on the en_GB Myspell dictionary
-which in turn was initially based on a subset of the
-original English wordlist created by Kevin Atkinson for
-Pspell and Aspell and thus is covered by his original
-LGPL licence.
-
-The credit for this en_AU dictionary goes to:
-
-Kelvin Eldridge (maintainer)
-Jean Hollis Weber
-David Wilson
-
-- Words incorrect in Australian English removed
-- a list from the previously removed words with corrected spelling was added
-- a list of major rivers was added
-- a list of place names was added
-- a list of Australian mammals was added
-- a list of Aboriginal/Koori words commonly used was added
-
-A total of 119,267 words are now recognized
-by the dictionary.
-
-Of course, special thanks go to the editors of the
-en_GB dictionary (David Bartlett, Brian Kelk and
-Andrew Brown) which provided the starting point
-for this dictionary.
-
-The affix file is currently a duplicate of the en_AU.aff
-created completely from scratch by David Bartlett and
-Andrew Brown, based on the published
-rules for MySpell and is also provided under the LGPL.
-
-If you find omissions or bugs or have new words to
-add to the dictionary, please contact the en_AU
-maintainer at:
-
- "Kelvin" <audictionary@onlineconnections.com.au>
-
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-en_CA
-
-The dictionary file was created using the "final" English and Canadian SCOWL
-(Spell Checker Oriented Word Lists) wordlists available at Kevin's Word Lists
-Page (http://wordlist.sourceforge.net). Lists with the suffixes 10, 20, 35,
-50, 65 and 65 were used. Lists with the suffixes 70, 80 and 95 were excluded.
-Copyright information for SCOWL and the wordlists used in creating it is
-reproduced below.
-
-The affix file is identical to the MySpell English (United States) affix file.
-It is a heavily modified version of the original english.aff file which was
-released as part of Geoff Kuenning's Ispell and as such is covered by his BSD
-license.
-
----
-
-COPYRIGHT, SOURCES, and CREDITS from SCOWL readme file:
-
-The collective work is Copyright 2000 by Kevin Atkinson as well as any
-of the copyrights mentioned below:
-
- Copyright 2000 by Kevin Atkinson
-
- Permission to use, copy, modify, distribute and sell these word
- lists, the associated scripts, the output created from the scripts,
- and its documentation for any purpose is hereby granted without fee,
- provided that the above copyright notice appears in all copies and
- that both that copyright notice and this permission notice appear in
- supporting documentation. Kevin Atkinson makes no representations
- about the suitability of this array for any purpose. It is provided
- "as is" without express or implied warranty.
-
-Alan Beale <biljir@pobox.com> also deserves special credit as he has,
-in addition to providing the 12Dicts package and being a major
-contributor to the ENABLE word list, given me an incredible amount of
-feedback and created a number of special lists (those found in the
-Supplement) in order to help improve the overall quality of SCOWL.
-
-The 10 level includes the 1000 most common English words (according to
-the Moby (TM) Words II [MWords] package), a subset of the 1000 most
-common words on the Internet (again, according to Moby Words II), and
-frequently class 16 from Brian Kelk's "UK English Wordlist
-with Frequency Classification".
-
-The MWords package was explicitly placed in the public domain:
-
- The Moby lexicon project is complete and has
- been place into the public domain. Use, sell,
- rework, excerpt and use in any way on any platform.
-
- Placing this material on internal or public servers is
- also encouraged. The compiler is not aware of any
- export restrictions so freely distribute world-wide.
-
- You can verify the public domain status by contacting
-
- Grady Ward
- 3449 Martha Ct.
- Arcata, CA 95521-4884
-
- grady@netcom.com
- grady@northcoast.com
-
-The "UK English Wordlist With Frequency Classification" is also in the
-Public Domain:
-
- Date: Sat, 08 Jul 2000 20:27:21 +0100
- From: Brian Kelk <Brian.Kelk@cl.cam.ac.uk>
-
-> I was wondering what the copyright status of your "UK English
- > Wordlist With Frequency Classification" word list as it seems to
- > be lacking any copyright notice.
-
- There were many many sources in total, but any text marked
- "copyright" was avoided. Locally-written documentation was one
- source. An earlier version of the list resided in a filespace called
- PUBLIC on the University mainframe, because it was considered public
- domain.
-
- Date: Tue, 11 Jul 2000 19:31:34 +0100
-
- > So are you saying your word list is also in the public domain?
-
- That is the intention.
-
-The 20 level includes frequency classes 7-15 from Brian's word list.
-
-The 35 level includes frequency classes 2-6 and words appearing in at
-least 11 of 12 dictionaries as indicated in the 12Dicts package. All
-words from the 12Dicts package have had likely inflections added via
-my inflection database.
-
-The 12Dicts package and Supplement is in the Public Domain.
-
-The WordNet database, which was used in the creation of the
-Inflections database, is under the following copyright:
-
- This software and database is being provided to you, the LICENSEE,
- by Princeton University under the following license. By obtaining,
- using and/or copying this software and database, you agree that you
- have read, understood, and will comply with these terms and
- conditions.:
-
- Permission to use, copy, modify and distribute this software and
- database and its documentation for any purpose and without fee or
- royalty is hereby granted, provided that you agree to comply with
- the following copyright notice and statements, including the
- disclaimer, and that the same appear on ALL copies of the software,
- database and documentation, including modifications that you make
- for internal use or for distribution.
-
- WordNet 1.6 Copyright 1997 by Princeton University. All rights
- reserved.
-
- THIS SOFTWARE AND DATABASE IS PROVIDED "AS IS" AND PRINCETON
- UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
- IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PRINCETON
- UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANT-
- ABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
- LICENSED SOFTWARE, DATABASE OR DOCUMENTATION WILL NOT INFRINGE ANY
- THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-
- The name of Princeton University or Princeton may not be used in
- advertising or publicity pertaining to distribution of the software
- and/or database. Title to copyright in this software, database and
- any associated documentation shall at all times remain with
- Princeton University and LICENSEE agrees to preserve same.
-
-The 50 level includes Brian's frequency class 1, words words appearing
-in at least 5 of 12 of the dictionaries as indicated in the 12Dicts
-package, and uppercase words in at least 4 of the previous 12
-dictionaries. A decent number of proper names is also included: The
-top 1000 male, female, and Last names from the 1990 Census report; a
-list of names sent to me by Alan Beale; and a few names that I added
-myself. Finally a small list of abbreviations not commonly found in
-other word lists is included.
-
-The name files form the Census report is a government document which I
-don't think can be copyrighted.
-
-The name list from Alan Beale is also derived from the linux words
-list, which is derived from the DEC list. He also added a bunch of
-miscellaneous names to the list, which he released to the Public Domain.
-
-The DEC Word list doesn't have a formal name. It is labeled as "FILE:
-english.words; VERSION: DEC-SRC-92-04-05" and was put together by Jorge
-Stolfi <stolfi@src.dec.com> DEC Systems Research Center. The DEC Word
-list has the following copyright statement:
-
- (NON-)COPYRIGHT STATUS
-
- To the best of my knowledge, all the files I used to build these
- wordlists were available for public distribution and use, at least
- for non-commercial purposes. I have confirmed this assumption with
- the authors of the lists, whenever they were known.
-
- Therefore, it is safe to assume that the wordlists in this package
- can also be freely copied, distributed, modified, and used for
- personal, educational, and research purposes. (Use of these files in
- commercial products may require written permission from DEC and/or
- the authors of the original lists.)
-
- Whenever you distribute any of these wordlists, please distribute
- also the accompanying README file. If you distribute a modified
- copy of one of these wordlists, please include the original README
- file with a note explaining your modifications. Your users will
- surely appreciate that.
-
- (NO-)WARRANTY DISCLAIMER
-
- These files, like the original wordlists on which they are based,
- are still very incomplete, uneven, and inconsitent, and probably
- contain many errors. They are offered "as is" without any warranty
- of correctness or fitness for any particular purpose. Neither I nor
- my employer can be held responsible for any losses or damages that
- may result from their use.
-
-However since this Word List is used in the linux.words package which
-the author claims is free of any copyright I assume it is OK to use
-for most purposes. If you want to use this in a commercial project
-and this concerns you the information from the DEC word list can
-easily be removed without much sacrifice in quality as only the name
-lists were used.
-
-The file special-jargon.50 uses common.lst and word.lst from the
-"Unofficial Jargon File Word Lists" which is derived from "The Jargon
-File". All of which is in the Public Domain. This file also contain
-a few extra UNIX terms which are found in the file "unix-terms" in the
-special/ directory.
-
-The 60 level includes Brian's frequency class 0 and all words
-appearing in at least 2 of the 12 dictionaries as indicated by the
-12Dicts package. A large number of names are also included: The 4,946
-female names and 3,897 male names from the MWords package and the
-files "computer.names", "misc.names", and "org.names" from the DEC
-package.
-
-The 65 level includes words found in the Ispell "medium" word list.
-The Ispell word lists are under the same copyright of Ispell itself
-which is:
-
- Copyright 1993, 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.
-
-The 70 level includes the 74,550 common dictionary words and the 21,986 names
-list from the MWords package. The common dictionary words, like those
-from the 12Dicts package, have had all likely inflections added.
-
-The 80 level includes the ENABLE word list, all the lists in the
-ENABLE supplement package (except for ABLE), the "UK Advanced Cryptics
-Dictionary" (UKACD), the list of signature words in from YAWL package,
-and the 10,196 places list from the MWords package.
-
-The ENABLE package, mainted by M\Cooper <thegrendel@theriver.com>,
-is in the Public Domain:
-
- The ENABLE master word list, WORD.LST, is herewith formally released
- into the Public Domain. Anyone is free to use it or distribute it in
- any manner they see fit. No fee or registration is required for its
- use nor are "contributions" solicited (if you feel you absolutely
- must contribute something for your own peace of mind, the authors of
- the ENABLE list ask that you make a donation on their behalf to your
- favorite charity). This word list is our gift to the Scrabble
- community, as an alternate to "official" word lists. Game designers
- may feel free to incorporate the WORD.LST into their games. Please
- mention the source and credit us as originators of the list. Note
- that if you, as a game designer, use the WORD.LST in your product,
- you may still copyright and protect your product, but you may *not*
- legally copyright or in any way restrict redistribution of the
- WORD.LST portion of your product. This *may* under law restrict your
- rights to restrict your users' rights, but that is only fair.
-
-UKACD, by J Ross Beresford <ross@bryson.demon.co.uk>, is under the
-following copyright:
-
- Copyright (c) J Ross Beresford 1993-1999. All Rights Reserved.
-
- The following restriction is placed on the use of this publication:
- if The UK Advanced Cryptics Dictionary is used in a software package
- or redistributed in any form, the copyright notice must be
- prominently displayed and the text of this document must be included
- verbatim.
-
- There are no other restrictions: I would like to see the list
- distributed as widely as possible.
-
-The 95 level includes the 354,984 single words and 256,772 compound
-words from the MWords package, ABLE.LST from the ENABLE Supplement,
-and some additional words found in my part-of-speech database that
-were not found anywhere else.
-
-Accent information was taken from UKACD.
-
-My VARCON package was used to create the American, British, and
-Canadian word list.
-
-Since the original word lists used used in the
-VARCON package came from the Ispell distribution they are under the
-Ispell copyright.
-
-The variant word lists were created from a list of variants found in
-the 12dicts supplement package as well as a list of variants I created
-myself.
-
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-en_GB
-
-This dictionary was initially based on a subset of the
-original English wordlist created by Kevin Atkinson for
-Pspell and Aspell and thus is covered by his original
-LGPL licence.
-
-It has been extensively updated by David Bartlett, Brian Kelk
-and Andrew Brown:
-- numerous Americanism have been removed
-- numerous American spellings have been corrected
-- missing words have been added
-- many errors have been corrected
-- compound hyphenated words have been added where appropriate
-
-Valuable inputs to this process were received from many other
-people - far too numerous to name. Serious thanks to you all
-for your greatly appreciated help.
-
-This word list is intended to be a good representation of
-current modern British English and thus it should be a good
-basis for Commonwealth English in most countries of the world
-outside North America.
-
-The affix file has been created completely from scratch
-by David Bartlett and Andrew Brown, based on the published
-rules for MySpell and is also provided under the LGPL.
-
-In creating the affix rules an attempt has been made to
-reproduce the most general rules for English word
-formation, rather than merely use it as a means to
-compress the size of the dictionary. It is hoped that this
-will facilitate future localisation to other variants of
-English.
-
-Please let David Bartlett <dbartlett@iee.org> know of any
-errors that you find.
-
-The current release is R 1.14, 15/12/02 or later
-
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-en_NZ
-
-I. Copyright
-II. Copying (Licence)
-----------------------------
-
-I. Copyright
-
-NZ English Dictionary v0.9 beta - Build 06SEP03
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-NB This is an initial version, please check:
-http://lingucomponent.openoffice.org/download_dictionary.html
-or
-http://www.girlza.com/dictionary/download.html
-for a final version, after a little while (no hurry).
-
-This dictionary is based on the en_GB Myspell dictionary
-which in turn was initially based on a subset of the
-original English wordlist created by Kevin Atkinson for
-Pspell and Aspell and thus is covered by his original
-LGPL licence.
-
-
-Introduction
-~~~~~~~~~~~~
-en_NZ.dic has been altered to include New Zealand places,
-including major cities and towns, and major suburbs. It
-also contains NZ words, organisations and expressions.
-
-en_NZ.aff has had a few REPlace strings added, but is
-basically unchanged.
-
-
-Acknowledgements
-~~~~~~~~~~~~~~~~
-Thanks must go to the original creators of the British
-dictionary, David Bartlett, Brian Kelk and Andrew Brown.
-
-I wouldn't have started this without seeing the Australian
-dictionary, thanks Kelvin Eldridge, Jean Hollis Weber and
-David Wilson.
-
-And thank you to all who've contributed to OpenOffice.org.
-
-
-License
-~~~~~~~
-This dictionary is covered by the GNU Lesser General Public
-License, viewable at http://www.gnu.org/copyleft/lesser.html
-
-
-Issues
-~~~~~~
-Many of the proper nouns already in the dictionary do not have
-an affix for 's.
-All my new words start after the z's of the original dictionary.
-
-
-Contact
-~~~~~~~
-Contact Tristan Burtenshaw (hooty@slingshot.co.nz) with any words,
-places or other suggestions for the dictionary.
-
-
-
-II. Copying
-
- GNU LESSER GENERAL PUBLIC LICENSE
- Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL. It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
- This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it. You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
- When we speak of free software, we are referring to freedom of use,
-not price. Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
- To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights. These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
- For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you. You must make sure that they, too, receive or can get the source
-code. If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it. And you must show them these terms so they know their rights.
-
- We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
- To protect each distributor, we want to make it very clear that
-there is no warranty for the free library. Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
- Finally, software patents pose a constant threat to the existence of
-any free program. We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder. Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
- Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License. This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License. We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
- When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library. The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom. The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
- We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License. It also provides other free software developers Less
-of an advantage over competing non-free programs. These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries. However, the Lesser license provides advantages in certain
-special circumstances.
-
- For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard. To achieve this, non-free programs must be
-allowed to use the library. A more frequent case is that a free
-library does the same job as widely used non-free libraries. In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
- In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software. For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
- Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
- The precise terms and conditions for copying, distribution and
-modification follow. Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library". The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
- GNU LESSER GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
- A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
- The "Library", below, refers to any such software library or work
-which has been distributed under these terms. A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language. (Hereinafter, translation is
-included without limitation in the term "modification".)
-
- "Source code" for a work means the preferred form of the work for
-making modifications to it. For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
- Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it). Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-
- 1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
- You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-
- 2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) The modified work must itself be a software library.
-
- b) You must cause the files modified to carry prominent notices
- stating that you changed the files and the date of any change.
-
- c) You must cause the whole of the work to be licensed at no
- charge to all third parties under the terms of this License.
-
- d) If a facility in the modified Library refers to a function or a
- table of data to be supplied by an application program that uses
- the facility, other than as an argument passed when the facility
- is invoked, then you must make a good faith effort to ensure that,
- in the event an application does not supply such function or
- table, the facility still operates, and performs whatever part of
- its purpose remains meaningful.
-
- (For example, a function in a library to compute square roots has
- a purpose that is entirely well-defined independent of the
- application. Therefore, Subsection 2d requires that any
- application-supplied function or table used by this function must
- be optional: if the application does not supply it, the square
- root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library. To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License. (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.) Do not make any other change in
-these notices.
-
- Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
- This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
- 4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
- If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library". Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
- However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library". The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
- When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library. The
-threshold for this to be true is not precisely defined by law.
-
- If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work. (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
- Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
- 6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
- You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License. You must supply a copy of this License. If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License. Also, you must do one
-of these things:
-
- a) Accompany the work with the complete corresponding
- machine-readable source code for the Library including whatever
- changes were used in the work (which must be distributed under
- Sections 1 and 2 above); and, if the work is an executable linked
- with the Library, with the complete machine-readable "work that
- uses the Library", as object code and/or source code, so that the
- user can modify the Library and then relink to produce a modified
- executable containing the modified Library. (It is understood
- that the user who changes the contents of definitions files in the
- Library will not necessarily be able to recompile the application
- to use the modified definitions.)
-
- b) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (1) uses at run time a
- copy of the library already present on the user's computer system,
- rather than copying library functions into the executable, and (2)
- will operate properly with a modified version of the library, if
- the user installs one, as long as the modified version is
- interface-compatible with the version that the work was made with.
-
- c) Accompany the work with a written offer, valid for at
- least three years, to give the same user the materials
- specified in Subsection 6a, above, for a charge no more
- than the cost of performing this distribution.
-
- d) If distribution of the work is made by offering access to copy
- from a designated place, offer equivalent access to copy the above
- specified materials from the same place.
-
- e) Verify that the user has already received a copy of these
- materials or that you have already sent this user a copy.
-
- For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it. However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
- It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system. Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
- 7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
- a) Accompany the combined library with a copy of the same work
- based on the Library, uncombined with any other library
- facilities. This must be distributed under the terms of the
- Sections above.
-
- b) Give prominent notice with the combined library of the fact
- that part of it is a work based on the Library, and explaining
- where to find the accompanying uncombined form of the same work.
-
- 8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License. Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License. However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
- 9. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Library or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
- 10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-
- 11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all. For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded. In such case, this License incorporates the limitation as if
-written in the body of this License.
-
- 13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation. If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
- 14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission. For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this. Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
- NO WARRANTY
-
- 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
- END OF TERMS AND CONDITIONS
+Copyright notices for specific languages are in README_??.txt. Note that the
+files for different regions are merged, both to save space and to make it
+possible to highlight words for another region different from bad words.
diff --git a/runtime/spell/de/de_DE.diff b/runtime/spell/de/de_DE.diff
new file mode 100644
index 000000000..f376dc931
--- /dev/null
+++ b/runtime/spell/de/de_DE.diff
@@ -0,0 +1,14 @@
+*** de_DE.orig.aff Fri Feb 25 12:50:10 2005
+--- de_DE.aff Sun Jul 3 19:04:32 2005
+***************
+*** 2,3 ****
+--- 2,10 ----
+ TRY esianrtolcdugmphbyfvkwäüößáéêàâñESIANRTOLCDUGMPHBYFVKWÄÜÖ
++
++ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
++
++ MIDWORD '
++
+ #
diff --git a/runtime/spell/de/main.aap b/runtime/spell/de/main.aap
new file mode 100644
index 000000000..dfd2a996a
--- /dev/null
+++ b/runtime/spell/de/main.aap
@@ -0,0 +1,82 @@
+# Aap recipe for Dutch Vim spell files.
+
+# Use a freshly compiled Vim if it exists.
+@if os.path.exists('../../../src/vim'):
+ VIM = ../../../src/vim
+@else:
+ VIM = vim
+
+SPELLDIR = ..
+FILES = de_DE.aff de_DE.dic
+ZIPFILE = de_DE_comb.zip
+
+all: $(SPELLDIR)/de.latin1.spl $(SPELLDIR)/de.utf-8.spl ../README_de.txt
+
+$(SPELLDIR)/de.latin1.spl : $(VIM) $(FILES)
+ :sys env LANG=de_DE.ISO8859-1
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
+
+$(SPELLDIR)/de.utf-8.spl : $(VIM) $(FILES)
+ :sys env LANG=de_DE.UTF-8
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
+
+../README_de.txt: README_de_DE_comb.txt
+ :copy $source $target
+
+#
+# Fetching the files from OpenOffice.org.
+#
+OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
+:attr {fetch = $(OODIR)/%file%} $(ZIPFILE)
+
+# The files don't depend on the .zip file so that we can delete it.
+# Only download the zip file if the targets don't exist.
+de_DE.aff de_DE.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch $(ZIPFILE)
+ :sys $(UNZIP) $(ZIPFILE)
+ :delete $(ZIPFILE)
+ :move de_DE_comb.aff de_DE.aff
+ :move de_DE_comb.dic de_DE.dic
+ @if not os.path.exists('de_DE.orig.aff'):
+ :copy de_DE.aff de_DE.orig.aff
+ @if not os.path.exists('de_DE.orig.dic'):
+ :copy de_DE.aff de_DE.orig.dic
+ :sys patch <de_DE.diff
+
+
+# Generate diff files, so that others can get the OpenOffice files and apply
+# the diffs to get the Vim versions.
+
+diff:
+ :assertpkg diff
+ :sys {force} diff -a -C 1 de_DE.orig.aff de_DE.aff >de_DE.diff
+ :sys {force} diff -a -C 1 de_DE.orig.dic de_DE.dic >>de_DE.diff
+
+
+# Check for updated OpenOffice spell files. When there are changes the
+# ".new.aff" and ".new.dic" files are left behind for manual inspection.
+
+check:
+ :assertpkg unzip diff
+ :fetch $(ZIPFILE)
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../$(ZIPFILE)
+ :move de_DE_comb.aff de_DE.aff
+ :move de_DE_comb.dic de_DE.dic
+ :sys {force} diff ../de_DE.orig.aff de_DE.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy de_DE.aff ../de_DE.new.aff
+ :sys {force} diff ../de_DE.orig.dic de_DE.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy de_DE.dic ../de_DE.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete $(ZIPFILE)
+
+
+# vim: set sts=4 sw=4 :
diff --git a/runtime/spell/en.ascii.spl b/runtime/spell/en.ascii.spl
index b59856c1f..1b51921ed 100644
--- a/runtime/spell/en.ascii.spl
+++ b/runtime/spell/en.ascii.spl
Binary files differ
diff --git a/runtime/spell/en.latin1.spl b/runtime/spell/en.latin1.spl
index 5286a4f83..b759d2f16 100644
--- a/runtime/spell/en.latin1.spl
+++ b/runtime/spell/en.latin1.spl
Binary files differ
diff --git a/runtime/spell/en.utf-8.spl b/runtime/spell/en.utf-8.spl
index cf522c755..420d3af06 100644
--- a/runtime/spell/en.utf-8.spl
+++ b/runtime/spell/en.utf-8.spl
Binary files differ
diff --git a/src/spell/en_AU.diff b/runtime/spell/en/en_AU.diff
index ff3c56e03..1b45c8f30 100644
--- a/src/spell/en_AU.diff
+++ b/runtime/spell/en/en_AU.diff
@@ -1,5 +1,5 @@
*** en_AU.orig.aff Fri Apr 15 13:20:36 2005
---- en_AU.aff Mon Jun 27 19:42:32 2005
+--- en_AU.aff Sun Jul 3 17:11:07 2005
***************
*** 7,9 ****
SET ISO8859-1
@@ -2352,7 +2352,7 @@
! SAL ZZ- _
! SAL Z S
*** en_AU.orig.dic Fri Apr 15 13:20:36 2005
---- en_AU.dic Mon Jun 27 09:31:13 2005
+--- en_AU.dic Sun Jul 3 17:11:07 2005
***************
*** 912,914 ****
Alaska/M
diff --git a/src/spell/en_CA.diff b/runtime/spell/en/en_CA.diff
index 2a555dedc..0ae8ff808 100644
--- a/src/spell/en_CA.diff
+++ b/runtime/spell/en/en_CA.diff
@@ -1,5 +1,5 @@
*** en_CA.orig.aff Fri Apr 15 13:20:36 2005
---- en_CA.aff Mon Jun 27 19:42:38 2005
+--- en_CA.aff Sun Jul 3 17:09:40 2005
***************
*** 3,4 ****
--- 3,13 ----
@@ -169,7 +169,7 @@
+ SAL ZZ- _
+ SAL Z S
*** en_CA.orig.dic Sat Apr 16 14:40:06 2005
---- en_CA.dic Mon Jun 27 09:31:15 2005
+--- en_CA.dic Sun Jul 3 17:09:40 2005
***************
*** 46,48 ****
R/G
diff --git a/src/spell/en_GB.diff b/runtime/spell/en/en_GB.diff
index fe1b7dd92..ab6e8dac2 100644
--- a/src/spell/en_GB.diff
+++ b/runtime/spell/en/en_GB.diff
@@ -1,26 +1,22 @@
-*** en_GB.orig.aff Fri Apr 15 13:20:36 2005
---- en_GB.aff Mon Jun 27 19:42:42 2005
+*** en_GB.orig.aff Sun Jul 3 17:53:13 2005
+--- en_GB.aff Sun Jul 3 17:59:15 2005
***************
-*** 7,9 ****
- SET ISO8859-1
-! TRY esiaénrtolcdugmphbyfvkw-'.zqjxSNRTLCGDMPHBEAUYOFIVKWöâôZQJXÅçèîêàïüäñ
- REP 24
---- 7,19 ----
- SET ISO8859-1
-! TRY esiaénrtolcdugmphbyfvkw-'.zqjxSNRTLCGDMPHBEAUYOFIVKWöâôZQJXÅçèîêàïüäñ
-!
-! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
-! LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
-! UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
-!
-! MIDWORD '
-!
-! RAR ?
-! BAD !
-!
- REP 24
+*** 8,9 ****
+--- 8,19 ----
+ TRY esiaénrtolcdugmfphbyvkw-'.zqjxSNRTLCGDMFPHBEAUYOIVKWóöâôZQJXÅçèîêàïüäñ
++
++ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
++
++ MIDWORD '
++
++ RAR ?
++ BAD !
++
+ REP 27
***************
-*** 34,53 ****
+*** 37,56 ****
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -41,7 +37,7 @@
PFX E Y 1
! PFX E 0 dis .
PFX F Y 5
---- 44,63 ----
+--- 47,66 ----
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -63,7 +59,7 @@
! PFX E 0 dis .
PFX F Y 5
***************
-*** 57,451 ****
+*** 60,454 ****
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
@@ -459,7 +455,7 @@
SFX T y iest [^aeiou]y
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
---- 67,461 ----
+--- 70,464 ----
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
@@ -856,7 +852,7 @@
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
***************
-*** 458,1143 ****
+*** 461,1150 ****
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
@@ -1023,7 +1019,7 @@
! SFX p 0 ess ll
! SFX p 0 less [^l]l
! SFX p 0 less [^ly]
- SFX Q Y 88
+ SFX Q Y 44
! SFX Q 0 tise a
! SFX Q e ise [^l]e
! SFX Q le ilise [^aeiou]le
@@ -1068,51 +1064,52 @@
! SFX Q y ising [^aeiou]y
! SFX Q 0 ising [aeiou]y
! SFX Q 0 ising [^aemsy]
-! SFX Q 0 tize a
-! SFX Q e ize [^l]e
-! SFX Q le ilize [^aeiou]le
-! SFX Q e ize [aeiou]le
-! SFX Q um ize um
-! SFX Q 0 ize [^u]m
-! SFX Q s ze is
-! SFX Q 0 ize [^i]s
-! SFX Q y ize [^aeiou]y
-! SFX Q 0 ize [aeiou]y
-! SFX Q 0 ize [^aemsy]
-! SFX Q 0 tizes a
-! SFX Q e izes [^l]e
-! SFX Q le ilizes [^aeiou]le
-! SFX Q e izes [aeiou]le
-! SFX Q um izes um
-! SFX Q 0 izes [^u]m
-! SFX Q s zes is
-! SFX Q 0 izes [^i]s
-! SFX Q y izes [^aeiou]y
-! SFX Q 0 izes [aeiou]y
-! SFX Q 0 izes [^aemsy]
-! SFX Q 0 tized a
-! SFX Q e ized [^l]e
-! SFX Q le ilized [^aeiou]le
-! SFX Q e ized [aeiou]le
-! SFX Q um ized um
-! SFX Q 0 ized [^u]m
-! SFX Q s zed is
-! SFX Q 0 ized [^i]s
-! SFX Q y ized [^aeiou]y
-! SFX Q 0 ized [aeiou]y
-! SFX Q 0 ized [^aemsy]
-! SFX Q 0 tizing a
-! SFX Q e izing [^l]e
-! SFX Q le ilizing [^aeiou]le
-! SFX Q e izing [aeiou]le
-! SFX Q um izing um
-! SFX Q 0 izing [^u]m
-! SFX Q s zing is
-! SFX Q 0 izing [^i]s
-! SFX Q y izing [^aeiou]y
-! SFX Q 0 izing [aeiou]y
-! SFX Q 0 izing [^aemsy]
- SFX q Y 44
+ SFX 8 Y 44
+! SFX 8 0 tize a
+! SFX 8 e ize [^l]e
+! SFX 8 le ilize [^aeiou]le
+! SFX 8 e ize [aeiou]le
+! SFX 8 um ize um
+! SFX 8 0 ize [^u]m
+! SFX 8 s ze is
+! SFX 8 0 ize [^i]s
+! SFX 8 y ize [^aeiou]y
+! SFX 8 0 ize [aeiou]y
+! SFX 8 0 ize [^aemsy]
+! SFX 8 0 tizes a
+! SFX 8 e izes [^l]e
+! SFX 8 le ilizes [^aeiou]le
+! SFX 8 e izes [aeiou]le
+! SFX 8 um izes um
+! SFX 8 0 izes [^u]m
+! SFX 8 s zes is
+! SFX 8 0 izes [^i]s
+! SFX 8 y izes [^aeiou]y
+! SFX 8 0 izes [aeiou]y
+! SFX 8 0 izes [^aemsy]
+! SFX 8 0 tized a
+! SFX 8 e ized [^l]e
+! SFX 8 le ilized [^aeiou]le
+! SFX 8 e ized [aeiou]le
+! SFX 8 um ized um
+! SFX 8 0 ized [^u]m
+! SFX 8 s zed is
+! SFX 8 0 ized [^i]s
+! SFX 8 y ized [^aeiou]y
+! SFX 8 0 ized [aeiou]y
+! SFX 8 0 ized [^aemsy]
+! SFX 8 0 tizing a
+! SFX 8 e izing [^l]e
+! SFX 8 le ilizing [^aeiou]le
+! SFX 8 e izing [aeiou]le
+! SFX 8 um izing um
+! SFX 8 0 izing [^u]m
+! SFX 8 s zing is
+! SFX 8 0 izing [^i]s
+! SFX 8 y izing [^aeiou]y
+! SFX 8 0 izing [aeiou]y
+! SFX 8 0 izing [^aemsy]
+ SFX q Y 22
! SFX q 0 tisation a
! SFX q e isation [^l]e
! SFX q le ilisation [^aeiou]le
@@ -1135,29 +1132,30 @@
! SFX q y isations [^aeiou]y
! SFX q 0 isations [aeiou]y
! SFX q 0 isations [^aemsy]
-! SFX q 0 tization a
-! SFX q e ization [^l]e
-! SFX q le ilization [^aeiou]le
-! SFX q e ization [aeiou]le
-! SFX q um ization um
-! SFX q 0 ization [^u]m
-! SFX q s zation is
-! SFX q 0 ization [^i]s
-! SFX q y ization [^aeiou]y
-! SFX q 0 ization [aeiou]y
-! SFX q 0 ization [^aemsy]
-! SFX q 0 tizations a
-! SFX q e izations [^l]e
-! SFX q le ilizations [^aeiou]le
-! SFX q e izations [aeiou]le
-! SFX q um izations um
-! SFX q 0 izations [^u]m
-! SFX q s zations is
-! SFX q 0 izations [^i]s
-! SFX q y izations [^aeiou]y
-! SFX q 0 izations [aeiou]y
-! SFX q 0 izations [^aemsy]
- SFX s Y 66
+ SFX - Y 22
+! SFX - 0 tization a
+! SFX - e ization [^l]e
+! SFX - le ilization [^aeiou]le
+! SFX - e ization [aeiou]le
+! SFX - um ization um
+! SFX - 0 ization [^u]m
+! SFX - s zation is
+! SFX - 0 ization [^i]s
+! SFX - y ization [^aeiou]y
+! SFX - 0 ization [aeiou]y
+! SFX - 0 ization [^aemsy]
+! SFX - 0 tizations a
+! SFX - e izations [^l]e
+! SFX - le ilizations [^aeiou]le
+! SFX - e izations [aeiou]le
+! SFX - um izations um
+! SFX - 0 izations [^u]m
+! SFX - s zations is
+! SFX - 0 izations [^i]s
+! SFX - y izations [^aeiou]y
+! SFX - 0 izations [aeiou]y
+! SFX - 0 izations [^aemsy]
+ SFX s Y 33
! SFX s 0 tiser a
! SFX s e iser [^l]e
! SFX s le iliser [^aeiou]le
@@ -1191,40 +1189,41 @@
! SFX s y iser's [^aeiou]y
! SFX s 0 iser's [aeiou]y
! SFX s 0 iser's [^aemsy]
-! SFX s 0 tizer a
-! SFX s e izer [^l]e
-! SFX s le ilizer [^aeiou]le
-! SFX s e izer [aeiou]le
-! SFX s um izer um
-! SFX s 0 izer [^u]m
-! SFX s s zer is
-! SFX s 0 izer [^i]s
-! SFX s y izer [^aeiou]y
-! SFX s 0 izer [aeiou]y
-! SFX s 0 izer [^aemsy]
-! SFX s 0 tizers a
-! SFX s e izers [^l]e
-! SFX s le ilizers [^aeiou]le
-! SFX s e izers [aeiou]le
-! SFX s um izers um
-! SFX s 0 izers [^u]m
-! SFX s s zers is
-! SFX s 0 izers [^i]s
-! SFX s y izers [^aeiou]y
-! SFX s 0 izers [aeiou]y
-! SFX s 0 izers [^aemsy]
-! SFX s 0 tizer's a
-! SFX s e izer's [^l]e
-! SFX s le ilizer's [^aeiou]le
-! SFX s e izer's [aeiou]le
-! SFX s um izer's um
-! SFX s 0 izer's [^u]m
-! SFX s s zer's is
-! SFX s 0 izer's [^i]s
-! SFX s y izer's [^aeiou]y
-! SFX s 0 izer's [aeiou]y
-! SFX s 0 izer's [^aemsy]
- SFX t Y 44
+ SFX 9 Y 33
+! SFX 9 0 tizer a
+! SFX 9 e izer [^l]e
+! SFX 9 le ilizer [^aeiou]le
+! SFX 9 e izer [aeiou]le
+! SFX 9 um izer um
+! SFX 9 0 izer [^u]m
+! SFX 9 s zer is
+! SFX 9 0 izer [^i]s
+! SFX 9 y izer [^aeiou]y
+! SFX 9 0 izer [aeiou]y
+! SFX 9 0 izer [^aemsy]
+! SFX 9 0 tizers a
+! SFX 9 e izers [^l]e
+! SFX 9 le ilizers [^aeiou]le
+! SFX 9 e izers [aeiou]le
+! SFX 9 um izers um
+! SFX 9 0 izers [^u]m
+! SFX 9 s zers is
+! SFX 9 0 izers [^i]s
+! SFX 9 y izers [^aeiou]y
+! SFX 9 0 izers [aeiou]y
+! SFX 9 0 izers [^aemsy]
+! SFX 9 0 tizer's a
+! SFX 9 e izer's [^l]e
+! SFX 9 le ilizer's [^aeiou]le
+! SFX 9 e izer's [aeiou]le
+! SFX 9 um izer's um
+! SFX 9 0 izer's [^u]m
+! SFX 9 s zer's is
+! SFX 9 0 izer's [^i]s
+! SFX 9 y izer's [^aeiou]y
+! SFX 9 0 izer's [aeiou]y
+! SFX 9 0 izer's [^aemsy]
+ SFX t Y 22
! SFX t 0 tisable a
! SFX t e isable [^l]e
! SFX t le ilisable [^aeiou]le
@@ -1236,17 +1235,6 @@
! SFX t y isable [^aeiou]y
! SFX t 0 isable [aeiou]y
! SFX t 0 isable [^aemsy]
-! SFX t 0 tizable a
-! SFX t e izable [^l]e
-! SFX t le ilizable [^aeiou]le
-! SFX t e izable [aeiou]le
-! SFX t um izable um
-! SFX t 0 izable [^u]m
-! SFX t s zable is
-! SFX t 0 izable [^i]s
-! SFX t y izable [^aeiou]y
-! SFX t 0 izable [aeiou]y
-! SFX t 0 izable [^aemsy]
! SFX t 0 tisability a
! SFX t e isability [^l]e
! SFX t le ilisability [^aeiou]le
@@ -1258,17 +1246,29 @@
! SFX t y isability [^aeiou]y
! SFX t 0 isability [aeiou]y
! SFX t 0 isability [^aemsy]
-! SFX t 0 tizability a
-! SFX t e izability [^l]e
-! SFX t le ilizability [^aeiou]le
-! SFX t e izability [aeiou]le
-! SFX t um izability um
-! SFX t 0 izability [^u]m
-! SFX t s zability is
-! SFX t 0 izability [^i]s
-! SFX t y izability [^aeiou]y
-! SFX t 0 izability [aeiou]y
-! SFX t 0 izability [^aemsy]
+ SFX + Y 22
+! SFX + 0 tizable a
+! SFX + e izable [^l]e
+! SFX + le ilizable [^aeiou]le
+! SFX + e izable [aeiou]le
+! SFX + um izable um
+! SFX + 0 izable [^u]m
+! SFX + s zable is
+! SFX + 0 izable [^i]s
+! SFX + y izable [^aeiou]y
+! SFX + 0 izable [aeiou]y
+! SFX + 0 izable [^aemsy]
+! SFX + 0 tizability a
+! SFX + e izability [^l]e
+! SFX + le ilizability [^aeiou]le
+! SFX + e izability [aeiou]le
+! SFX + um izability um
+! SFX + 0 izability [^u]m
+! SFX + s zability is
+! SFX + 0 izability [^i]s
+! SFX + y izability [^aeiou]y
+! SFX + 0 izability [aeiou]y
+! SFX + 0 izability [^aemsy]
SFX M Y 1
! SFX M 0 's .
SFX B Y 48
@@ -1467,7 +1467,7 @@
! SFX O 0 al [^ipux]t
! SFX O 0 al [^aebcrtxmy]
SFX o Y 12
-! SFZ o 0 lly a
+! SFX o 0 lly a
! SFX o e ally [^bcgv]e
! SFX o e ially [bcgv]e
! SFX o 0 ially [bcrx]
@@ -1543,7 +1543,7 @@
! SFX 3 0 ist's [aeioubp]y
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
---- 468,1274 ----
+--- 471,1281 ----
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
@@ -1710,7 +1710,7 @@
! SFX p 0 ess ll
! SFX p 0 less [^l]l
! SFX p 0 less [^ly]
- SFX Q Y 88
+ SFX Q Y 44
! SFX Q 0 tise a
! SFX Q e ise [^l]e
! SFX Q le ilise [^aeiou]le
@@ -1755,51 +1755,52 @@
! SFX Q y ising [^aeiou]y
! SFX Q 0 ising [aeiou]y
! SFX Q 0 ising [^aemsy]
-! SFX Q 0 tize a
-! SFX Q e ize [^l]e
-! SFX Q le ilize [^aeiou]le
-! SFX Q e ize [aeiou]le
-! SFX Q um ize um
-! SFX Q 0 ize [^u]m
-! SFX Q s ze is
-! SFX Q 0 ize [^i]s
-! SFX Q y ize [^aeiou]y
-! SFX Q 0 ize [aeiou]y
-! SFX Q 0 ize [^aemsy]
-! SFX Q 0 tizes a
-! SFX Q e izes [^l]e
-! SFX Q le ilizes [^aeiou]le
-! SFX Q e izes [aeiou]le
-! SFX Q um izes um
-! SFX Q 0 izes [^u]m
-! SFX Q s zes is
-! SFX Q 0 izes [^i]s
-! SFX Q y izes [^aeiou]y
-! SFX Q 0 izes [aeiou]y
-! SFX Q 0 izes [^aemsy]
-! SFX Q 0 tized a
-! SFX Q e ized [^l]e
-! SFX Q le ilized [^aeiou]le
-! SFX Q e ized [aeiou]le
-! SFX Q um ized um
-! SFX Q 0 ized [^u]m
-! SFX Q s zed is
-! SFX Q 0 ized [^i]s
-! SFX Q y ized [^aeiou]y
-! SFX Q 0 ized [aeiou]y
-! SFX Q 0 ized [^aemsy]
-! SFX Q 0 tizing a
-! SFX Q e izing [^l]e
-! SFX Q le ilizing [^aeiou]le
-! SFX Q e izing [aeiou]le
-! SFX Q um izing um
-! SFX Q 0 izing [^u]m
-! SFX Q s zing is
-! SFX Q 0 izing [^i]s
-! SFX Q y izing [^aeiou]y
-! SFX Q 0 izing [aeiou]y
-! SFX Q 0 izing [^aemsy]
- SFX q Y 44
+ SFX 8 Y 44
+! SFX 8 0 tize a
+! SFX 8 e ize [^l]e
+! SFX 8 le ilize [^aeiou]le
+! SFX 8 e ize [aeiou]le
+! SFX 8 um ize um
+! SFX 8 0 ize [^u]m
+! SFX 8 s ze is
+! SFX 8 0 ize [^i]s
+! SFX 8 y ize [^aeiou]y
+! SFX 8 0 ize [aeiou]y
+! SFX 8 0 ize [^aemsy]
+! SFX 8 0 tizes a
+! SFX 8 e izes [^l]e
+! SFX 8 le ilizes [^aeiou]le
+! SFX 8 e izes [aeiou]le
+! SFX 8 um izes um
+! SFX 8 0 izes [^u]m
+! SFX 8 s zes is
+! SFX 8 0 izes [^i]s
+! SFX 8 y izes [^aeiou]y
+! SFX 8 0 izes [aeiou]y
+! SFX 8 0 izes [^aemsy]
+! SFX 8 0 tized a
+! SFX 8 e ized [^l]e
+! SFX 8 le ilized [^aeiou]le
+! SFX 8 e ized [aeiou]le
+! SFX 8 um ized um
+! SFX 8 0 ized [^u]m
+! SFX 8 s zed is
+! SFX 8 0 ized [^i]s
+! SFX 8 y ized [^aeiou]y
+! SFX 8 0 ized [aeiou]y
+! SFX 8 0 ized [^aemsy]
+! SFX 8 0 tizing a
+! SFX 8 e izing [^l]e
+! SFX 8 le ilizing [^aeiou]le
+! SFX 8 e izing [aeiou]le
+! SFX 8 um izing um
+! SFX 8 0 izing [^u]m
+! SFX 8 s zing is
+! SFX 8 0 izing [^i]s
+! SFX 8 y izing [^aeiou]y
+! SFX 8 0 izing [aeiou]y
+! SFX 8 0 izing [^aemsy]
+ SFX q Y 22
! SFX q 0 tisation a
! SFX q e isation [^l]e
! SFX q le ilisation [^aeiou]le
@@ -1822,29 +1823,30 @@
! SFX q y isations [^aeiou]y
! SFX q 0 isations [aeiou]y
! SFX q 0 isations [^aemsy]
-! SFX q 0 tization a
-! SFX q e ization [^l]e
-! SFX q le ilization [^aeiou]le
-! SFX q e ization [aeiou]le
-! SFX q um ization um
-! SFX q 0 ization [^u]m
-! SFX q s zation is
-! SFX q 0 ization [^i]s
-! SFX q y ization [^aeiou]y
-! SFX q 0 ization [aeiou]y
-! SFX q 0 ization [^aemsy]
-! SFX q 0 tizations a
-! SFX q e izations [^l]e
-! SFX q le ilizations [^aeiou]le
-! SFX q e izations [aeiou]le
-! SFX q um izations um
-! SFX q 0 izations [^u]m
-! SFX q s zations is
-! SFX q 0 izations [^i]s
-! SFX q y izations [^aeiou]y
-! SFX q 0 izations [aeiou]y
-! SFX q 0 izations [^aemsy]
- SFX s Y 66
+ SFX - Y 22
+! SFX - 0 tization a
+! SFX - e ization [^l]e
+! SFX - le ilization [^aeiou]le
+! SFX - e ization [aeiou]le
+! SFX - um ization um
+! SFX - 0 ization [^u]m
+! SFX - s zation is
+! SFX - 0 ization [^i]s
+! SFX - y ization [^aeiou]y
+! SFX - 0 ization [aeiou]y
+! SFX - 0 ization [^aemsy]
+! SFX - 0 tizations a
+! SFX - e izations [^l]e
+! SFX - le ilizations [^aeiou]le
+! SFX - e izations [aeiou]le
+! SFX - um izations um
+! SFX - 0 izations [^u]m
+! SFX - s zations is
+! SFX - 0 izations [^i]s
+! SFX - y izations [^aeiou]y
+! SFX - 0 izations [aeiou]y
+! SFX - 0 izations [^aemsy]
+ SFX s Y 33
! SFX s 0 tiser a
! SFX s e iser [^l]e
! SFX s le iliser [^aeiou]le
@@ -1878,40 +1880,41 @@
! SFX s y iser's [^aeiou]y
! SFX s 0 iser's [aeiou]y
! SFX s 0 iser's [^aemsy]
-! SFX s 0 tizer a
-! SFX s e izer [^l]e
-! SFX s le ilizer [^aeiou]le
-! SFX s e izer [aeiou]le
-! SFX s um izer um
-! SFX s 0 izer [^u]m
-! SFX s s zer is
-! SFX s 0 izer [^i]s
-! SFX s y izer [^aeiou]y
-! SFX s 0 izer [aeiou]y
-! SFX s 0 izer [^aemsy]
-! SFX s 0 tizers a
-! SFX s e izers [^l]e
-! SFX s le ilizers [^aeiou]le
-! SFX s e izers [aeiou]le
-! SFX s um izers um
-! SFX s 0 izers [^u]m
-! SFX s s zers is
-! SFX s 0 izers [^i]s
-! SFX s y izers [^aeiou]y
-! SFX s 0 izers [aeiou]y
-! SFX s 0 izers [^aemsy]
-! SFX s 0 tizer's a
-! SFX s e izer's [^l]e
-! SFX s le ilizer's [^aeiou]le
-! SFX s e izer's [aeiou]le
-! SFX s um izer's um
-! SFX s 0 izer's [^u]m
-! SFX s s zer's is
-! SFX s 0 izer's [^i]s
-! SFX s y izer's [^aeiou]y
-! SFX s 0 izer's [aeiou]y
-! SFX s 0 izer's [^aemsy]
- SFX t Y 44
+ SFX 9 Y 33
+! SFX 9 0 tizer a
+! SFX 9 e izer [^l]e
+! SFX 9 le ilizer [^aeiou]le
+! SFX 9 e izer [aeiou]le
+! SFX 9 um izer um
+! SFX 9 0 izer [^u]m
+! SFX 9 s zer is
+! SFX 9 0 izer [^i]s
+! SFX 9 y izer [^aeiou]y
+! SFX 9 0 izer [aeiou]y
+! SFX 9 0 izer [^aemsy]
+! SFX 9 0 tizers a
+! SFX 9 e izers [^l]e
+! SFX 9 le ilizers [^aeiou]le
+! SFX 9 e izers [aeiou]le
+! SFX 9 um izers um
+! SFX 9 0 izers [^u]m
+! SFX 9 s zers is
+! SFX 9 0 izers [^i]s
+! SFX 9 y izers [^aeiou]y
+! SFX 9 0 izers [aeiou]y
+! SFX 9 0 izers [^aemsy]
+! SFX 9 0 tizer's a
+! SFX 9 e izer's [^l]e
+! SFX 9 le ilizer's [^aeiou]le
+! SFX 9 e izer's [aeiou]le
+! SFX 9 um izer's um
+! SFX 9 0 izer's [^u]m
+! SFX 9 s zer's is
+! SFX 9 0 izer's [^i]s
+! SFX 9 y izer's [^aeiou]y
+! SFX 9 0 izer's [aeiou]y
+! SFX 9 0 izer's [^aemsy]
+ SFX t Y 22
! SFX t 0 tisable a
! SFX t e isable [^l]e
! SFX t le ilisable [^aeiou]le
@@ -1923,17 +1926,6 @@
! SFX t y isable [^aeiou]y
! SFX t 0 isable [aeiou]y
! SFX t 0 isable [^aemsy]
-! SFX t 0 tizable a
-! SFX t e izable [^l]e
-! SFX t le ilizable [^aeiou]le
-! SFX t e izable [aeiou]le
-! SFX t um izable um
-! SFX t 0 izable [^u]m
-! SFX t s zable is
-! SFX t 0 izable [^i]s
-! SFX t y izable [^aeiou]y
-! SFX t 0 izable [aeiou]y
-! SFX t 0 izable [^aemsy]
! SFX t 0 tisability a
! SFX t e isability [^l]e
! SFX t le ilisability [^aeiou]le
@@ -1945,17 +1937,29 @@
! SFX t y isability [^aeiou]y
! SFX t 0 isability [aeiou]y
! SFX t 0 isability [^aemsy]
-! SFX t 0 tizability a
-! SFX t e izability [^l]e
-! SFX t le ilizability [^aeiou]le
-! SFX t e izability [aeiou]le
-! SFX t um izability um
-! SFX t 0 izability [^u]m
-! SFX t s zability is
-! SFX t 0 izability [^i]s
-! SFX t y izability [^aeiou]y
-! SFX t 0 izability [aeiou]y
-! SFX t 0 izability [^aemsy]
+ SFX + Y 22
+! SFX + 0 tizable a
+! SFX + e izable [^l]e
+! SFX + le ilizable [^aeiou]le
+! SFX + e izable [aeiou]le
+! SFX + um izable um
+! SFX + 0 izable [^u]m
+! SFX + s zable is
+! SFX + 0 izable [^i]s
+! SFX + y izable [^aeiou]y
+! SFX + 0 izable [aeiou]y
+! SFX + 0 izable [^aemsy]
+! SFX + 0 tizability a
+! SFX + e izability [^l]e
+! SFX + le ilizability [^aeiou]le
+! SFX + e izability [aeiou]le
+! SFX + um izability um
+! SFX + 0 izability [^u]m
+! SFX + s zability is
+! SFX + 0 izability [^i]s
+! SFX + y izability [^aeiou]y
+! SFX + 0 izability [aeiou]y
+! SFX + 0 izability [^aemsy]
SFX M Y 1
! SFX M 0 's .
SFX B Y 48
@@ -2351,266 +2355,200 @@
! SAL Y(AEIOU)- Y
! SAL ZZ- _
! SAL Z S
-*** en_GB.orig.dic Sun Apr 17 18:08:50 2005
---- en_GB.dic Mon Jun 27 09:31:17 2005
+*** en_GB.orig.dic Sun Jul 3 18:05:07 2005
+--- en_GB.dic Sun Jul 3 18:19:25 2005
***************
-*** 187,189 ****
- aitch/SM
-- al/FAC
- al-Jazeera
---- 187,188 ----
+*** 630,632 ****
+ Byrne/M
+- c/nN
+ cab/GMDXVSN
+--- 630,631 ----
***************
-*** 1795,1796 ****
---- 1794,1796 ----
- conic/S
-+ conj.
- conjectural
+*** 2588,2590 ****
+ KwaZulu
+- l/3
+ lab/oMS
+--- 2587,2588 ----
***************
-*** 2103,2105 ****
- czarship
-- d/o
- d'art
---- 2103,2104 ----
+*** 5221,5223 ****
+ Ajax
+- al/AFC
+ Alabamian/M
+--- 5219,5220 ----
***************
-*** 2148,2150 ****
- dazzle/DRkGJS
-- dBm
- DC
---- 2147,2148 ----
+*** 6256,6258 ****
+ czarist
+- d/to
+ damaged/U
+--- 6253,6254 ----
***************
-*** 4637,4639 ****
- lass/MS
-- last-minute
- lasts/e
---- 4635,4636 ----
-***************
-*** 5470,5472 ****
- Münchhausen/M
-- n/NxnVvu
- N'Djamena
---- 5467,5468 ----
-***************
-*** 5499,5501 ****
- natch
+*** 8168,8170 ****
+ Natasha/M
! nation/M
- nationalises/A
---- 5495,5497 ----
- natch
+ navigable/P
+--- 8164,8166 ----
+ Natasha/M
! nation/MS
- nationalises/A
+ navigable/P
***************
-*** 6316,6317 ****
---- 6312,6314 ----
- pompom/SM
-+ pompon/M
- ponce/M
-***************
-*** 7048,7050 ****
- régime/SM
-! s/ok7
- Saab/M
---- 7045,7047 ----
- régime/SM
-! singly
- Saab/M
-***************
-*** 11148,11149 ****
---- 11145,11148 ----
- dBi
-+ dBm
-+ dBd
- DCB
+*** 9959,9961 ****
+ Uzbekistan/M
+- v
+ vacation/M
+--- 9955,9956 ----
***************
-*** 11591,11593 ****
- dérailleur/SM
+*** 11546,11548 ****
+ DZ
- e
- e'en
---- 11590,11591 ----
-***************
-*** 14591,14592 ****
---- 14589,14591 ----
- native/SP
-+ natively
- nativity/SM
+ each
+--- 11541,11542 ----
***************
-*** 16172,16174 ****
- RSPCA
-- rte
- rubati
---- 16171,16172 ----
+*** 13189,13191 ****
+ mythology/SQM31w
+- n/NnxVvu
+ nacho/S
+--- 13183,13184 ----
***************
-*** 17251,17253 ****
- séance/SM
-- t/ac
- T'ang
---- 17249,17250 ----
+*** 16038,16040 ****
+ Catholics
+! cation/MW
+ catnap/DMSG
+--- 16031,16033 ----
+ Catholics
+! cation/MWS
+ catnap/DMSG
***************
-*** 17808,17809 ****
---- 17805,17807 ----
- unsearchable
-+ searchable
- unshakable/Y
+*** 16954,16956 ****
+ eyewash/SM
+- f/F7
+ fabricator/SM
+--- 16947,16948 ----
***************
-*** 18268,18270 ****
- xylophone/SM
-- y/K
- yachters
---- 18266,18267 ----
+*** 17874,17877 ****
+ lass/MS
+- last-ditch
+- last-minute
+ latchkey/SM
+--- 17866,17867 ----
***************
-*** 18322,18323 ****
---- 18319,18321 ----
- émigré/S
-+ nd
- 3GPP
+*** 22365,22367 ****
+ futuristic/S
+- g/7
+ gabbiness/S
+--- 22355,22356 ----
***************
-*** 19303,19304 ****
---- 19301,19303 ----
- Brampton/M
-+ Bram/M
- brand/MRDGSZ
+*** 22692,22694 ****
+ HMS
+! hobbit
+ hobnob/DGS
+--- 22681,22683 ----
+ HMS
+! hobbit/MS
+ hobnob/DGS
***************
-*** 21097,21099 ****
- estimative
-! et
- etalon
---- 21096,21099 ----
- estimative
-! et cetera
-! et al.
- etalon
+*** 23909,23911 ****
+ ozone/M
+- p/AYFI
+ p.a.
+--- 23898,23899 ----
***************
-*** 21228,21230 ****
- Ezra
-- f/37
- Faber/M
---- 21228,21229 ----
+*** 24558,24560 ****
+ Rt.
+- rte
+ Ru/M
+--- 24546,24547 ----
***************
-*** 22734,22736 ****
- justification/M
-- k/E
- Kabul
---- 22733,22734 ----
+*** 25697,25699 ****
+ xylem/SM
+- y/K
+ Yamaha/M
+--- 25684,25685 ----
***************
-*** 23632,23633 ****
---- 23630,23632 ----
- Moog
-+ Moolenaar/M
- moonlight/GRDSM
+*** 27778,27780 ****
+ gyrfalcon/MS
+- h/E
+ habitual/YP
+--- 27764,27765 ----
***************
-*** 24242,24244 ****
- oxygenation/M
-- p/FYAI
- Pablo/M
---- 24241,24242 ----
+*** 29532,29534 ****
+ pyrotechny/Ww
+- q
+ QoS
+--- 29517,29518 ----
***************
-*** 27223,27225 ****
- Villiers
+*** 30776,30778 ****
+ villein/SM
! vim/M
- Vinci/M
---- 27221,27223 ----
- Villiers
+ vindaloo/S
+--- 30760,30763 ----
+ villein/SM
+! vim/M?
! Vim/M
- Vinci/M
+ vindaloo/S
***************
-*** 27568,27570 ****
- Yvette
+*** 30956,30958 ****
+ YWCA
- z/d
- Zealanders
---- 27566,27567 ----
+ Zamia
+--- 30941,30942 ----
***************
-*** 28174,28176 ****
- Aztec/M
-- b/bp
- Baal/M
---- 28171,28172 ----
-***************
-*** 28890,28892 ****
- Cathy
-! cation/MW
- catnip/SM
---- 28886,28888 ----
- Cathy
-! cation/MWS
- catnip/SM
+*** 34732,34734 ****
+ quizzes
+- r/sd
+ rabbet/SMd
+--- 34716,34717 ----
***************
-*** 30587,30589 ****
- fissionable/S
-! fist/6GD
- fit/6TRGMYJPSDj
---- 30583,30585 ----
- fissionable/S
-! fist/6GDMS
- fit/6TRGMYJPSDj
-***************
-*** 30846,30848 ****
- fuzzy/TP
-- g/73
- Ga/y
---- 30842,30843 ----
-***************
-*** 31409,31411 ****
- hob/MDGZS
-! hobbit
- Hobbs
---- 31404,31406 ----
- hob/MDGZS
-! hobbit/MS
- Hobbs
+*** 37265,37266 ****
+--- 37248,37250 ----
+ dBi
++ dBd
+ dBW
***************
-*** 32110,32112 ****
- kWh
-! l/F
- lab/MoS
---- 32105,32107 ----
- kWh
-! coll
- lab/MoS
+*** 37691,37693 ****
+ establishment/A
+- et
+ eternity/SM
+--- 37675,37676 ----
***************
-*** 32174,32176 ****
- lasso/GMDS
-- last-ditch
- Laszlo/M
---- 32169,32170 ----
-***************
-*** 34188,34190 ****
- pâté/M
-- q
- Qatar
---- 34182,34183 ----
+*** 39974,39976 ****
+ rustproof/GD
+! s/ko7
+ Sabine/M
+--- 39957,39959 ----
+ rustproof/GD
+! singly
+ Sabine/M
***************
-*** 36324,36326 ****
- uttermost
-- v
- vacate/nDGNS
---- 36317,36318 ----
+*** 41473,41475 ****
+ azalea/MS
+- b/pb
+ Baal/M
+--- 41456,41457 ----
***************
-*** 37916,37918 ****
- bys
-- c/nN
- Ca/y
---- 37908,37909 ----
+*** 43612,43614 ****
+ justnesses
+- k/k
+ kabob's
+--- 43594,43595 ----
***************
-*** 40468,40470 ****
- Gödel/M
-- h/E
- ha'p'orth
---- 40459,40460 ----
+*** 45690,45692 ****
+ syringe/SMGD
+- t/7k
+ Tabasco/M
+--- 45671,45672 ----
***************
-*** 43275,43276 ****
---- 43265,43267 ----
- pneumonia/MS
+*** 46281 ****
+--- 46261,46276 ----
+ Zurich/M
++ conj.
++ pompon
++ natively
++ nd
++ Bram/M
++ et al.
++ et cetera
++ Moolenaar/M
+ pneumonic
- PO
-***************
-*** 43665,43667 ****
- qwerty
-- r/d
- Ra
---- 43656,43657 ----
-***************
-*** 46148 ****
---- 46138,46144 ----
- à
+ the the/!
+ a a/!
+ a an/!
diff --git a/src/spell/en_NZ.diff b/runtime/spell/en/en_NZ.diff
index 98c6cab06..5c9562228 100644
--- a/src/spell/en_NZ.diff
+++ b/runtime/spell/en/en_NZ.diff
@@ -1,5 +1,5 @@
*** en_NZ.orig.aff Fri Apr 15 13:20:36 2005
---- en_NZ.aff Mon Jun 27 19:42:45 2005
+--- en_NZ.aff Sun Jul 3 17:11:34 2005
***************
*** 7,9 ****
SET ISO8859-1
@@ -2353,7 +2353,7 @@
! SAL ZZ- _
! SAL Z S
*** en_NZ.orig.dic Fri Apr 15 13:20:36 2005
---- en_NZ.dic Mon Jun 27 09:31:19 2005
+--- en_NZ.dic Sun Jul 3 17:11:34 2005
***************
*** 4,6 ****
2ZB
diff --git a/src/spell/en_US.diff b/runtime/spell/en/en_US.diff
index b097609a9..e2321a0e4 100644
--- a/src/spell/en_US.diff
+++ b/runtime/spell/en/en_US.diff
@@ -1,5 +1,5 @@
*** en_US.orig.aff Fri Apr 15 13:20:36 2005
---- en_US.aff Mon Jun 27 19:42:49 2005
+--- en_US.aff Sun Jul 3 16:59:28 2005
***************
*** 3,4 ****
--- 3,13 ----
@@ -176,7 +176,7 @@
+ SAL ZZ- _
+ SAL Z S
*** en_US.orig.dic Fri Apr 15 13:20:36 2005
---- en_US.dic Mon Jun 27 09:31:21 2005
+--- en_US.dic Sun Jul 3 16:59:28 2005
***************
*** 5944,5946 ****
bk
diff --git a/runtime/spell/en/main.aap b/runtime/spell/en/main.aap
new file mode 100644
index 000000000..03aae6d41
--- /dev/null
+++ b/runtime/spell/en/main.aap
@@ -0,0 +1,232 @@
+# Aap recipe for English Vim spell files.
+
+# Use a freshly compiled Vim if it exists.
+@if os.path.exists('../../../src/vim'):
+ VIM = ../../../src/vim
+@else:
+ VIM = vim
+
+SPELLDIR = ..
+FILES = en_US.aff en_US.dic
+ en_AU.aff en_AU.dic
+ en_CA.aff en_CA.dic
+ en_GB.aff en_GB.dic
+ en_NZ.aff en_NZ.dic
+
+all: $(SPELLDIR)/en.latin1.spl $(SPELLDIR)/en.utf-8.spl \
+ $(SPELLDIR)/en.ascii.spl ../README_en.txt
+
+$(SPELLDIR)/en.latin1.spl : $(VIM) $(FILES)
+ :sys env LANG=en_US.ISO8859-1
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB
+ en_NZ" -c q
+
+$(SPELLDIR)/en.utf-8.spl : $(VIM) $(FILES)
+ :sys env LANG=en_US.UTF-8
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB
+ en_NZ" -c q
+
+$(SPELLDIR)/en.ascii.spl : $(VIM) $(FILES)
+ :sys $(VIM) -e -c "mkspell! -ascii $(SPELLDIR)/en
+ en_US en_AU en_CA en_GB en_NZ" -c q
+
+../README_en.txt: README_en_US.txt README_en_AU.txt
+ :print en_US >!$target
+ :cat README_en_US.txt | :eval re.sub('\r', '', stdin) >>$target
+ :print =================================================== >>$target
+ :print en_AU: >>$target
+ :cat README_en_AU.txt | :eval re.sub('\r', '', stdin) >>$target
+ :print =================================================== >>$target
+ :print en_CA: >>$target
+ :cat README_en_CA.txt | :eval re.sub('\r', '', stdin) >>$target
+ :print =================================================== >>$target
+ :print en_GB: >>$target
+ :cat README_en_GB.txt | :eval re.sub('\r', '', stdin) >>$target
+ :print =================================================== >>$target
+ :print en_NZ: >>$target
+ :cat README_en_NZ.txt | :eval re.sub('\r', '', stdin) >>$target
+
+#
+# Fetching the files from OpenOffice.org.
+#
+OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
+:attr {fetch = $(OODIR)/%file%} en_US.zip en_CA.zip en_NZ.zip
+ en_GB.zip en_AU.zip
+
+# The files don't depend on the .zip file so that we can delete it.
+# Only download the zip file if the targets don't exist.
+en_US.aff en_US.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch en_US.zip
+ :sys $(UNZIP) en_US.zip
+ :delete en_US.zip
+ @if not os.path.exists('en_US.orig.aff'):
+ :copy en_US.aff en_US.orig.aff
+ @if not os.path.exists('en_US.orig.dic'):
+ :copy en_US.aff en_US.orig.dic
+ :sys patch <en_US.diff
+
+en_AU.aff en_AU.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch en_AU.zip
+ :sys $(UNZIP) en_AU.zip
+ :delete en_AU.zip
+ @if not os.path.exists('en_AU.orig.aff'):
+ :copy en_AU.aff en_AU.orig.aff
+ @if not os.path.exists('en_AU.orig.dic'):
+ :copy en_AU.aff en_AU.orig.dic
+ :sys patch <en_AU.diff
+
+en_CA.aff en_CA.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch en_CA.zip
+ :sys $(UNZIP) en_CA.zip
+ :delete en_CA.zip
+ @if not os.path.exists('en_CA.orig.aff'):
+ :copy en_CA.aff en_CA.orig.aff
+ @if not os.path.exists('en_CA.orig.dic'):
+ :copy en_CA.aff en_CA.orig.dic
+ :sys patch <en_CA.diff
+
+en_GB.aff en_GB.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch en_GB.zip
+ :sys $(UNZIP) en_GB.zip
+ :delete en_GB.zip
+ :delete dictionary.lst.example
+ @if not os.path.exists('en_GB.orig.aff'):
+ :copy en_GB.aff en_GB.orig.aff
+ @if not os.path.exists('en_GB.orig.dic'):
+ :copy en_GB.aff en_GB.orig.dic
+ :sys patch <en_GB.diff
+
+en_NZ.aff en_NZ.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch en_NZ.zip
+ :sys $(UNZIP) en_NZ.zip
+ :delete en_NZ.zip
+ @if not os.path.exists('en_NZ.orig.aff'):
+ :copy en_NZ.aff en_NZ.orig.aff
+ @if not os.path.exists('en_NZ.orig.dic'):
+ :copy en_NZ.aff en_NZ.orig.dic
+ :sys patch <en_NZ.diff
+
+
+# Generate diff files, so that others can get the OpenOffice files and apply
+# the diffs to get the Vim versions.
+
+diff:
+ :assertpkg diff
+ :sys {force} diff -a -C 1 en_US.orig.aff en_US.aff >en_US.diff
+ :sys {force} diff -a -C 1 en_US.orig.dic en_US.dic >>en_US.diff
+ :sys {force} diff -a -C 1 en_AU.orig.aff en_AU.aff >en_AU.diff
+ :sys {force} diff -a -C 1 en_AU.orig.dic en_AU.dic >>en_AU.diff
+ :sys {force} diff -a -C 1 en_CA.orig.aff en_CA.aff >en_CA.diff
+ :sys {force} diff -a -C 1 en_CA.orig.dic en_CA.dic >>en_CA.diff
+ :sys {force} diff -a -C 1 en_GB.orig.aff en_GB.aff >en_GB.diff
+ :sys {force} diff -a -C 1 en_GB.orig.dic en_GB.dic >>en_GB.diff
+ :sys {force} diff -a -C 1 en_NZ.orig.aff en_NZ.aff >en_NZ.diff
+ :sys {force} diff -a -C 1 en_NZ.orig.dic en_NZ.dic >>en_NZ.diff
+
+
+# Check for updated OpenOffice spell files. When there are changes the
+# ".new.aff" and ".new.dic" files are left behind for manual inspection.
+
+check: check-us check-au check-ca check-gb check-nz
+
+check-us:
+ :assertpkg unzip diff
+ :fetch en_US.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../en_US.zip
+ :sys {force} diff ../en_US.orig.aff en_US.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_US.aff ../en_US.new.aff
+ :sys {force} diff ../en_US.orig.dic en_US.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_US.dic ../en_US.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete en_US.zip
+
+check-au:
+ :assertpkg unzip diff
+ :fetch en_AU.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../en_AU.zip
+ :sys {force} diff ../en_AU.orig.aff en_AU.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_AU.aff ../en_AU.new.aff
+ :sys {force} diff ../en_AU.orig.dic en_AU.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_AU.dic ../en_AU.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete en_AU.zip
+
+check-ca:
+ :assertpkg unzip diff
+ :fetch en_CA.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../en_CA.zip
+ :sys {force} diff ../en_CA.orig.aff en_CA.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_CA.aff ../en_CA.new.aff
+ :sys {force} diff ../en_CA.orig.dic en_CA.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_CA.dic ../en_CA.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete en_CA.zip
+
+check-gb:
+ :assertpkg unzip diff
+ :fetch en_GB.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../en_GB.zip
+ :sys {force} diff ../en_GB.orig.aff en_GB.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_GB.aff ../en_GB.new.aff
+ :sys {force} diff ../en_GB.orig.dic en_GB.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_GB.dic ../en_GB.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete en_GB.zip
+
+check-nz:
+ :assertpkg unzip diff
+ :fetch en_NZ.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../en_NZ.zip
+ :sys {force} diff ../en_NZ.orig.aff en_NZ.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_NZ.aff ../en_NZ.new.aff
+ :sys {force} diff ../en_NZ.orig.dic en_NZ.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy en_NZ.dic ../en_NZ.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete en_NZ.zip
+
+# vim: set sts=4 sw=4 :
diff --git a/src/spell/fr_FR.diff b/runtime/spell/fr/fr_FR.diff
index b00f3b7a4..b00f3b7a4 100644
--- a/src/spell/fr_FR.diff
+++ b/runtime/spell/fr/fr_FR.diff
diff --git a/runtime/spell/fr/main.aap b/runtime/spell/fr/main.aap
new file mode 100644
index 000000000..e7f142771
--- /dev/null
+++ b/runtime/spell/fr/main.aap
@@ -0,0 +1,77 @@
+# Aap recipe for Dutch Vim spell files.
+
+# Use a freshly compiled Vim if it exists.
+@if os.path.exists('../../../src/vim'):
+ VIM = ../../../src/vim
+@else:
+ VIM = vim
+
+SPELLDIR = ..
+FILES = fr_FR.aff fr_FR.dic
+
+all: $(SPELLDIR)/fr.latin1.spl $(SPELLDIR)/fr.utf-8.spl ../README_fr.txt
+
+$(SPELLDIR)/fr.latin1.spl : $(VIM) $(FILES)
+ :sys env LANG=fr_FR.ISO8859-1
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/fr fr_FR" -c q
+
+$(SPELLDIR)/fr.utf-8.spl : $(VIM) $(FILES)
+ :sys env LANG=fr_FR.UTF-8
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/fr fr_FR" -c q
+
+../README_fr.txt : lisez-moi.txt
+ :copy $source $target
+
+#
+# Fetching the files from OpenOffice.org.
+#
+OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
+:attr {fetch = $(OODIR)/%file%} fr_FR.zip
+
+# The files don't depend on the .zip file so that we can delete it.
+# Only download the zip file if the targets don't exist.
+fr_FR.aff fr_FR.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch fr_FR.zip
+ :sys $(UNZIP) fr_FR.zip
+ :delete fr_FR.zip
+ @if not os.path.exists('fr_FR.orig.aff'):
+ :copy fr_FR.aff fr_FR.orig.aff
+ @if not os.path.exists('fr_FR.orig.dic'):
+ :copy fr_FR.aff fr_FR.orig.dic
+ :sys patch <fr_FR.diff
+
+
+# Generate diff files, so that others can get the OpenOffice files and apply
+# the diffs to get the Vim versions.
+
+diff:
+ :assertpkg diff
+ :sys {force} diff -a -C 1 fr_FR.orig.aff fr_FR.aff >fr_FR.diff
+ :sys {force} diff -a -C 1 fr_FR.orig.dic fr_FR.dic >>fr_FR.diff
+
+
+# Check for updated OpenOffice spell files. When there are changes the
+# ".new.aff" and ".new.dic" files are left behind for manual inspection.
+
+check:
+ :assertpkg unzip diff
+ :fetch fr_FR.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../fr_FR.zip
+ :sys {force} diff ../fr_FR.orig.aff fr_FR.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy fr_FR.aff ../fr_FR.new.aff
+ :sys {force} diff ../fr_FR.orig.dic fr_FR.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy fr_FR.dic ../fr_FR.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete fr_FR.zip
+
+
+# vim: set sts=4 sw=4 :
diff --git a/src/spell/he_IL.diff b/runtime/spell/he/he_IL.diff
index 2947c2882..2947c2882 100644
--- a/src/spell/he_IL.diff
+++ b/runtime/spell/he/he_IL.diff
diff --git a/runtime/spell/he/main.aap b/runtime/spell/he/main.aap
new file mode 100644
index 000000000..413c5e2c3
--- /dev/null
+++ b/runtime/spell/he/main.aap
@@ -0,0 +1,73 @@
+# Aap recipe for Dutch Vim spell files.
+
+# Use a freshly compiled Vim if it exists.
+@if os.path.exists('../../../src/vim'):
+ VIM = ../../../src/vim
+@else:
+ VIM = vim
+
+SPELLDIR = ..
+FILES = he_IL.aff he_IL.dic
+
+all: $(SPELLDIR)/he.utf-8.spl ../README_he.txt
+
+$(SPELLDIR)/he.utf-8.spl : $(VIM) $(FILES)
+ :sys env LANG=he_IL.UTF-8
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/he he_IL" -c q
+
+../README_he.txt : README_he_IL.txt
+ :copy $source $target
+
+#
+# Fetching the files from OpenOffice.org.
+#
+OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
+:attr {fetch = $(OODIR)/%file%} he_IL.zip
+
+# The files don't depend on the .zip file so that we can delete it.
+# Only download the zip file if the targets don't exist.
+he_IL.aff he_IL.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch he_IL.zip
+ :sys $(UNZIP) he_IL.zip
+ :delete he_IL.zip
+ @if not os.path.exists('he_IL.orig.aff'):
+ :copy he_IL.aff he_IL.orig.aff
+ @if not os.path.exists('he_IL.orig.dic'):
+ :copy he_IL.aff he_IL.orig.dic
+ :sys patch <he_IL.diff
+
+
+# Generate diff files, so that others can get the OpenOffice files and apply
+# the diffs to get the Vim versions.
+
+diff:
+ :assertpkg diff
+ :sys {force} diff -a -C 1 he_IL.orig.aff he_IL.aff >he_IL.diff
+ :sys {force} diff -a -C 1 he_IL.orig.dic he_IL.dic >>he_IL.diff
+
+
+# Check for updated OpenOffice spell files. When there are changes the
+# ".new.aff" and ".new.dic" files are left behind for manual inspection.
+
+check:
+ :assertpkg unzip diff
+ :fetch he_IL.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../he_IL.zip
+ :sys {force} diff ../he_IL.orig.aff he_IL.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy he_IL.aff ../he_IL.new.aff
+ :sys {force} diff ../he_IL.orig.dic he_IL.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy he_IL.dic ../he_IL.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete he_IL.zip
+
+
+# vim: set sts=4 sw=4 :
diff --git a/runtime/spell/main.aap b/runtime/spell/main.aap
new file mode 100644
index 000000000..ded1bc098
--- /dev/null
+++ b/runtime/spell/main.aap
@@ -0,0 +1,6 @@
+:child de/main.aap
+:child en/main.aap
+:child fr/main.aap
+:child he/main.aap
+:child nl/main.aap
+:child pl/main.aap
diff --git a/runtime/spell/nl/main.aap b/runtime/spell/nl/main.aap
new file mode 100644
index 000000000..80e5f7480
--- /dev/null
+++ b/runtime/spell/nl/main.aap
@@ -0,0 +1,77 @@
+# Aap recipe for Dutch Vim spell files.
+
+# Use a freshly compiled Vim if it exists.
+@if os.path.exists('../../../src/vim'):
+ VIM = ../../../src/vim
+@else:
+ VIM = vim
+
+SPELLDIR = ..
+FILES = nl_NL.aff nl_NL.dic
+
+all: $(SPELLDIR)/nl.latin1.spl $(SPELLDIR)/nl.utf-8.spl ../README_nl.txt
+
+$(SPELLDIR)/nl.latin1.spl : $(VIM) $(FILES)
+ :sys env LANG=nl_NL.ISO8859-1
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
+
+$(SPELLDIR)/nl.utf-8.spl : $(VIM) $(FILES)
+ :sys env LANG=nl_NL.UTF-8
+ $(VIM) -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
+
+../README_nl.txt : README_nl_NL.txt
+ :copy $source $target
+
+#
+# Fetching the files from OpenOffice.org.
+#
+OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
+:attr {fetch = $(OODIR)/%file%} nl_NL.zip
+
+# The files don't depend on the .zip file so that we can delete it.
+# Only download the zip file if the targets don't exist.
+nl_NL.aff nl_NL.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch nl_NL.zip
+ :sys $(UNZIP) nl_NL.zip
+ :delete nl_NL.zip
+ @if not os.path.exists('nl_NL.orig.aff'):
+ :copy nl_NL.aff nl_NL.orig.aff
+ @if not os.path.exists('nl_NL.orig.dic'):
+ :copy nl_NL.aff nl_NL.orig.dic
+ :sys patch <nl_NL.diff
+
+
+# Generate diff files, so that others can get the OpenOffice files and apply
+# the diffs to get the Vim versions.
+
+diff:
+ :assertpkg diff
+ :sys {force} diff -a -C 1 nl_NL.orig.aff nl_NL.aff >nl_NL.diff
+ :sys {force} diff -a -C 1 nl_NL.orig.dic nl_NL.dic >>nl_NL.diff
+
+
+# Check for updated OpenOffice spell files. When there are changes the
+# ".new.aff" and ".new.dic" files are left behind for manual inspection.
+
+check:
+ :assertpkg unzip diff
+ :fetch nl_NL.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../nl_NL.zip
+ :sys {force} diff ../nl_NL.orig.aff nl_NL.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy nl_NL.aff ../nl_NL.new.aff
+ :sys {force} diff ../nl_NL.orig.dic nl_NL.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy nl_NL.dic ../nl_NL.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete nl_NL.zip
+
+
+# vim: set sts=4 sw=4 :
diff --git a/src/spell/nl_NL.diff b/runtime/spell/nl/nl_NL.diff
index 070dd9148..070dd9148 100644
--- a/src/spell/nl_NL.diff
+++ b/runtime/spell/nl/nl_NL.diff
diff --git a/runtime/spell/pl/main.aap b/runtime/spell/pl/main.aap
new file mode 100644
index 000000000..b28477d02
--- /dev/null
+++ b/runtime/spell/pl/main.aap
@@ -0,0 +1,75 @@
+# Aap recipe for Dutch Vim spell files.
+
+# Use a freshly compiled Vim if it exists.
+@if os.path.exists('../../../src/vim'):
+ VIM = ../../../src/vim
+@else:
+ VIM = vim
+
+SPELLDIR = ..
+FILES = pl_PL.aff pl_PL.dic
+
+all: $(SPELLDIR)/pl.iso-8859-2.spl $(SPELLDIR)/pl.utf-8.spl ../README_pl.txt
+
+$(SPELLDIR)/pl.iso-8859-2.spl : $(VIM) $(FILES)
+ :sys env LANG=pl_PL.ISO8859-2 $(VIM) -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
+
+$(SPELLDIR)/pl.utf-8.spl : $(VIM) $(FILES)
+ :sys env LANG=pl_PL.UTF-8 $(VIM) -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
+
+../README_pl.txt: README_pl_PL.txt
+ :copy $source $target
+
+#
+# Fetching the files from OpenOffice.org.
+#
+OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
+:attr {fetch = $(OODIR)/%file%} pl_PL.zip
+
+# The files don't depend on the .zip file so that we can delete it.
+# Only download the zip file if the targets don't exist.
+pl_PL.aff pl_PL.dic: {buildcheck=}
+ :assertpkg unzip patch
+ :fetch pl_PL.zip
+ :sys $(UNZIP) pl_PL.zip
+ :delete pl_PL.zip
+ @if not os.path.exists('pl_PL.orig.aff'):
+ :copy pl_PL.aff pl_PL.orig.aff
+ @if not os.path.exists('pl_PL.orig.dic'):
+ :copy pl_PL.aff pl_PL.orig.dic
+ :sys patch <pl_PL.diff
+
+
+# Generate diff files, so that others can get the OpenOffice files and apply
+# the diffs to get the Vim versions.
+
+diff:
+ :assertpkg diff
+ :sys {force} diff -a -C 1 pl_PL.orig.aff pl_PL.aff >pl_PL.diff
+ :sys {force} diff -a -C 1 pl_PL.orig.dic pl_PL.dic >>pl_PL.diff
+
+
+# Check for updated OpenOffice spell files. When there are changes the
+# ".new.aff" and ".new.dic" files are left behind for manual inspection.
+
+check:
+ :assertpkg unzip diff
+ :fetch pl_PL.zip
+ :mkdir tmp
+ :cd tmp
+ @try:
+ @import stat
+ :sys $(UNZIP) ../pl_PL.zip
+ :sys {force} diff ../pl_PL.orig.aff pl_PL.aff >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy pl_PL.aff ../pl_PL.new.aff
+ :sys {force} diff ../pl_PL.orig.dic pl_PL.dic >d
+ @if os.stat('d')[stat.ST_SIZE] > 0:
+ :copy pl_PL.dic ../pl_PL.new.dic
+ @finally:
+ :cd ..
+ :delete {r}{f}{q} tmp
+ :delete pl_PL.zip
+
+
+# vim: set sts=4 sw=4 :
diff --git a/src/spell/pl_PL.diff b/runtime/spell/pl/pl_PL.diff
index 562d59a58..562d59a58 100644
--- a/src/spell/pl_PL.diff
+++ b/runtime/spell/pl/pl_PL.diff
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
index 757aa7380..e74019fce 100644
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -679,16 +679,16 @@ LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(LIBC) $(OLE_LIB) user32.lib $(SNIFF_LIB) \
$(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) $(RUBY_LIB) $(TCL_LIB) \
$(NETBEANS_LIB) $(XPM_LIB) $(LINK_PDB)
-all: $(VIM) vimrun.exe install.exe uninstal.exe xxd/xxd.exe GvimExt/gvimext.dll
+all: $(VIM).exe vimrun.exe install.exe uninstal.exe xxd/xxd.exe GvimExt/gvimext.dll
-$(VIM): $(OUTDIR) $(OBJ) $(GUI_OBJ) $(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(RUBY_OBJ) $(TCL_OBJ) $(SNIFF_OBJ) $(CSCOPE_OBJ) $(NETBEANS_OBJ) $(XPM_OBJ) version.c version.h
+$(VIM).exe: $(OUTDIR) $(OBJ) $(GUI_OBJ) $(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(RUBY_OBJ) $(TCL_OBJ) $(SNIFF_OBJ) $(CSCOPE_OBJ) $(NETBEANS_OBJ) $(XPM_OBJ) version.c version.h
$(CC) $(CFLAGS) version.c /Fo$(OUTDIR)/version.obj $(PDB)
- $(link) $(LINKARGS1) -out:$*.exe $(OBJ) $(GUI_OBJ) $(OLE_OBJ) \
+ $(link) $(LINKARGS1) -out:$* $(OBJ) $(GUI_OBJ) $(OLE_OBJ) \
$(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(RUBY_OBJ) $(TCL_OBJ) $(SNIFF_OBJ) \
$(CSCOPE_OBJ) $(NETBEANS_OBJ) $(XPM_OBJ) \
$(OUTDIR)\version.obj $(LINKARGS2)
-$(VIM).exe: $(VIM)
+$(VIM): $(VIM).exe
$(OUTDIR):
if not exist $(OUTDIR)/nul mkdir $(OUTDIR)
@@ -907,11 +907,11 @@ $(OUTDIR)/xpm_w32.obj: $(OUTDIR) xpm_w32.c
$(OUTDIR)/vim.res: $(OUTDIR) vim.rc version.h tools.bmp tearoff.bmp vim.ico vim_error.ico vim_alert.ico vim_info.ico vim_quest.ico
$(RC) /l 0x409 /Fo$(OUTDIR)/vim.res $(RCFLAGS) vim.rc
-iid_ole.c if_ole.h vim.tlb: if_ole.idl $(INTDIR) $(OUTDIR)
- midl /nologo /proxy nul /iid iid_ole.c /tlb vim.tlb /header if_ole.h if_ole.idl
+iid_ole.c if_ole.h vim.tlb: if_ole.idl
+ midl /nologo /error none /proxy nul /iid iid_ole.c /tlb vim.tlb /header if_ole.h if_ole.idl
dimm.h dimm_i.c: dimm.idl
- midl /nologo /proxy nul dimm.idl
+ midl /nologo /error none /proxy nul dimm.idl
$(OUTDIR)/dimm_i.obj: $(OUTDIR) dimm_i.c $(INCL)
diff --git a/src/eval.c b/src/eval.c
index af2c73d7f..c1762265f 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -375,7 +375,6 @@ static long list_len __ARGS((list_T *l));
static int list_equal __ARGS((list_T *l1, list_T *l2, int ic));
static int dict_equal __ARGS((dict_T *d1, dict_T *d2, int ic));
static int tv_equal __ARGS((typval_T *tv1, typval_T *tv2, int ic));
-static int string_isa_number __ARGS((char_u *s));
static listitem_T *list_find __ARGS((list_T *l, long n));
static long list_idx_of_item __ARGS((list_T *l, listitem_T *item));
static void list_append __ARGS((list_T *l, listitem_T *item));
@@ -5179,7 +5178,8 @@ dict_equal(d1, d2, ic)
/*
* Return TRUE if "tv1" and "tv2" have the same value.
- * Compares the items just like "==" would compare them.
+ * Compares the items just like "==" would compare them, but strings and
+ * numbers are different.
*/
static int
tv_equal(tv1, tv2, ic)
@@ -5190,61 +5190,35 @@ tv_equal(tv1, tv2, ic)
char_u buf1[NUMBUFLEN], buf2[NUMBUFLEN];
char_u *s1, *s2;
- if (tv1->v_type == VAR_LIST || tv2->v_type == VAR_LIST)
- {
- /* recursive! */
- if (tv1->v_type != tv2->v_type
- || !list_equal(tv1->vval.v_list, tv2->vval.v_list, ic))
- return FALSE;
- }
- else if (tv1->v_type == VAR_DICT || tv2->v_type == VAR_DICT)
- {
- /* recursive! */
- if (tv1->v_type != tv2->v_type
- || !dict_equal(tv1->vval.v_dict, tv2->vval.v_dict, ic))
- return FALSE;
- }
- else if (tv1->v_type == VAR_FUNC || tv2->v_type == VAR_FUNC)
- {
- if (tv1->v_type != tv2->v_type
- || tv1->vval.v_string == NULL
- || tv2->vval.v_string == NULL
- || STRCMP(tv1->vval.v_string, tv2->vval.v_string) != 0)
- return FALSE;
- }
- else if (tv1->v_type == VAR_NUMBER || tv2->v_type == VAR_NUMBER)
- {
- /* "4" is equal to 4. But don't consider 'a' and zero to be equal.
- * Don't consider "4x" to be equal to 4. */
- if ((tv1->v_type == VAR_STRING
- && !string_isa_number(tv1->vval.v_string))
- || (tv2->v_type == VAR_STRING
- && !string_isa_number(tv2->vval.v_string)))
- return FALSE;
- if (get_tv_number(tv1) != get_tv_number(tv2))
- return FALSE;
- }
- else
+ if (tv1->v_type != tv2->v_type)
+ return FALSE;
+
+ switch (tv1->v_type)
{
- s1 = get_tv_string_buf(tv1, buf1);
- s2 = get_tv_string_buf(tv2, buf2);
- if ((ic ? MB_STRICMP(s1, s2) : STRCMP(s1, s2)) != 0)
- return FALSE;
- }
- return TRUE;
-}
+ case VAR_LIST:
+ /* recursive! */
+ return list_equal(tv1->vval.v_list, tv2->vval.v_list, ic);
-/*
- * Return TRUE if "tv" is a number without other non-white characters.
- */
- static int
-string_isa_number(s)
- char_u *s;
-{
- int len;
+ case VAR_DICT:
+ /* recursive! */
+ return dict_equal(tv1->vval.v_dict, tv2->vval.v_dict, ic);
+
+ case VAR_FUNC:
+ return (tv1->vval.v_string != NULL
+ && tv2->vval.v_string != NULL
+ && STRCMP(tv1->vval.v_string, tv2->vval.v_string) == 0);
+
+ case VAR_NUMBER:
+ return tv1->vval.v_number == tv2->vval.v_number;
- vim_str2nr(s, NULL, &len, TRUE, TRUE, NULL, NULL);
- return len > 0 && *skipwhite(s + len) == NUL;
+ case VAR_STRING:
+ s1 = get_tv_string_buf(tv1, buf1);
+ s2 = get_tv_string_buf(tv2, buf2);
+ return ((ic ? MB_STRICMP(s1, s2) : STRCMP(s1, s2)) == 0);
+ }
+
+ EMSG2(_(e_intern2), "tv_equal()");
+ return TRUE;
}
/*
diff --git a/src/farsi.c b/src/farsi.c
index f74447f76..f325b32e0 100644
--- a/src/farsi.c
+++ b/src/farsi.c
@@ -1939,7 +1939,7 @@ lrFswap(cmdbuf, len)
}
/*
- * Reverse the characters in the seach path and substitude section accordingly
+ * Reverse the characters in the search path and substitute section accordingly
*/
char_u *
lrF_sub(ibuf)
@@ -1950,8 +1950,8 @@ lrF_sub(ibuf)
p = ibuf;
- /* Find the boundry of the search path */
- while (((p = vim_strchr(++p, '/')) != NULL) && p[-1] == '\\')
+ /* Find the boundary of the search path */
+ while (++p, ((p = vim_strchr(p, '/')) != NULL) && p[-1] == '\\')
;
if (p == NULL)
@@ -1960,7 +1960,7 @@ lrF_sub(ibuf)
/* Reverse the Farsi characters in the search path. */
lrFswap(ibuf, (int)(p-ibuf));
- /* Now find the boundry of the substitute section */
+ /* Now find the boundary of the substitute section */
if ((ep = (char_u *)strrchr((char *)++p, '/')) != NULL)
cnt = (int)(ep - p);
else
diff --git a/src/if_ole.cpp b/src/if_ole.cpp
index de6faad07..544ea16fb 100644
--- a/src/if_ole.cpp
+++ b/src/if_ole.cpp
@@ -651,7 +651,7 @@ static void RecursiveDeleteKey(HKEY hKeyParent, const char *child)
}
// Create a key and set its value
-static void SetKeyAndValue(const char *key, const char subkey, const char *value)
+static void SetKeyAndValue(const char *key, const char *subkey, const char *value)
{
HKEY hKey;
char buffer[1024];
diff --git a/src/spell.c b/src/spell.c
index f8b846033..015a7108b 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -607,7 +607,7 @@ static int set_spell_charflags __ARGS((char_u *flags, char_u *upp));
static int set_spell_chartab __ARGS((char_u *fol, char_u *low, char_u *upp));
static void write_spell_chartab __ARGS((FILE *fd));
static int spell_casefold __ARGS((char_u *p, int len, char_u *buf, int buflen));
-static void spell_find_suggest __ARGS((char_u *badptr, suginfo_T *su, int maxcount, int banbadword));
+static void spell_find_suggest __ARGS((char_u *badptr, suginfo_T *su, int maxcount, int banbadword, int need_cap));
#ifdef FEAT_EVAL
static void spell_suggest_expr __ARGS((suginfo_T *su, char_u *expr));
#endif
@@ -5952,6 +5952,10 @@ spell_suggest()
suginfo_T sug;
suggest_T *stp;
int mouse_used;
+ int need_cap;
+ regmatch_T regmatch;
+ int endcol;
+ char_u *line_copy = NULL;
/* Find the start of the badly spelled word. */
if (spell_move_to(FORWARD, TRUE, TRUE) == FAIL
@@ -5983,8 +5987,62 @@ spell_suggest()
/* Get the word and its length. */
line = ml_get_curline();
+ /* Figure out if the word should be capitalised. */
+ need_cap = FALSE;
+ if (curbuf->b_cap_prog != NULL)
+ {
+ endcol = 0;
+ if (skipwhite(line) - line == curwin->w_cursor.col)
+ {
+ /* At start of line, check if previous line is empty or sentence
+ * ends there. */
+ if (curwin->w_cursor.lnum == 1)
+ need_cap = TRUE;
+ else
+ {
+ line = ml_get(curwin->w_cursor.lnum - 1);
+ if (*skipwhite(line) == NUL)
+ need_cap = TRUE;
+ else
+ {
+ /* Append a space in place of the line break. */
+ line_copy = concat_str(line, (char_u *)" ");
+ line = line_copy;
+ endcol = STRLEN(line);
+ }
+ }
+ }
+ else
+ endcol = curwin->w_cursor.col;
+
+ if (endcol > 0)
+ {
+ /* Check if sentence ends before the bad word. */
+ regmatch.regprog = curbuf->b_cap_prog;
+ regmatch.rm_ic = FALSE;
+ p = line + endcol;
+ for (;;)
+ {
+ mb_ptr_back(line, p);
+ if (p == line || SPELL_ISWORDP(p))
+ break;
+ if (vim_regexec(&regmatch, p, 0)
+ && regmatch.endp[0] == line + endcol)
+ {
+ need_cap = TRUE;
+ break;
+ }
+ }
+ }
+
+ /* get the line again, we may have been using the previous one */
+ line = ml_get_curline();
+ vim_free(line_copy);
+ }
+
/* Get the list of suggestions */
- spell_find_suggest(line + curwin->w_cursor.col, &sug, (int)Rows - 2, TRUE);
+ spell_find_suggest(line + curwin->w_cursor.col, &sug, (int)Rows - 2,
+ TRUE, need_cap);
if (sug.su_ga.ga_len == 0)
MSG(_("Sorry, no suggestions"));
@@ -6159,7 +6217,7 @@ spell_suggest_list(gap, word, maxcount)
suggest_T *stp;
char_u *wcopy;
- spell_find_suggest(word, &sug, maxcount, FALSE);
+ spell_find_suggest(word, &sug, maxcount, FALSE, FALSE);
/* Make room in "gap". */
ga_init2(gap, sizeof(char_u *), sug.su_ga.ga_len + 1);
@@ -6192,11 +6250,12 @@ spell_suggest_list(gap, word, maxcount)
* This is based on the mechanisms of Aspell, but completely reimplemented.
*/
static void
-spell_find_suggest(badptr, su, maxcount, banbadword)
+spell_find_suggest(badptr, su, maxcount, banbadword, need_cap)
char_u *badptr;
suginfo_T *su;
int maxcount;
int banbadword; /* don't include badword in suggestions */
+ int need_cap; /* word should start with capital */
{
int attr = 0;
char_u buf[MAXPATHL];
@@ -6230,6 +6289,8 @@ spell_find_suggest(badptr, su, maxcount, banbadword)
su->su_fbadword, MAXWLEN);
/* get caps flags for bad word */
su->su_badflags = captype(su->su_badptr, su->su_badptr + su->su_badlen);
+ if (need_cap)
+ su->su_badflags |= WF_ONECAP;
/* If the word is not capitalised and spell_check() doesn't consider the
* word to be bad then it might need to be capitalised. Add a suggestion
@@ -6237,7 +6298,7 @@ spell_find_suggest(badptr, su, maxcount, banbadword)
#ifdef FEAT_MBYTE
c = mb_ptr2char(su->su_badptr);
#else
- c = *p;
+ c = *su->su_badptr;
#endif
if (!SPELL_ISUPPER(c) && attr == 0)
{
@@ -7972,6 +8033,7 @@ suggest_try_soundalike(su)
char_u *p;
int score;
+ flags |= su->su_badflags;
if (round == 1 && (flags & WF_CAPMASK) != 0)
{
/* Need to fix case according to
diff --git a/src/spell/Makefile b/src/spell/Makefile
deleted file mode 100644
index 838e603ab..000000000
--- a/src/spell/Makefile
+++ /dev/null
@@ -1,117 +0,0 @@
-# Makefile for Vim spell files.
-
-SPELLDIR = ../../runtime/spell
-VIM = ../vim
-
-all: en pl nl de fr
-
-en: $(SPELLDIR)/en.latin1.spl \
- $(SPELLDIR)/en.utf-8.spl \
- $(SPELLDIR)/en.ascii.spl
-
-pl: $(SPELLDIR)/pl.iso-8859-2.spl \
- $(SPELLDIR)/pl.utf-8.spl
-
-nl: $(SPELLDIR)/nl.latin1.spl \
- $(SPELLDIR)/nl.utf-8.spl
-
-de: $(SPELLDIR)/de.latin1.spl \
- $(SPELLDIR)/de.utf-8.spl
-
-fr: $(SPELLDIR)/fr.latin1.spl \
- $(SPELLDIR)/fr.utf-8.spl
-
-he: $(SPELLDIR)/he.utf-8.spl
-
-diff:
- -diff -a -C 1 en_US.orig.aff en_US.aff >en_US.diff
- -diff -a -C 1 en_US.orig.dic en_US.dic >>en_US.diff
- -diff -a -C 1 en_AU.orig.aff en_AU.aff >en_AU.diff
- -diff -a -C 1 en_AU.orig.dic en_AU.dic >>en_AU.diff
- -diff -a -C 1 en_CA.orig.aff en_CA.aff >en_CA.diff
- -diff -a -C 1 en_CA.orig.dic en_CA.dic >>en_CA.diff
- -diff -a -C 1 en_GB.orig.aff en_GB.aff >en_GB.diff
- -diff -a -C 1 en_GB.orig.dic en_GB.dic >>en_GB.diff
- -diff -a -C 1 en_NZ.orig.aff en_NZ.aff >en_NZ.diff
- -diff -a -C 1 en_NZ.orig.dic en_NZ.dic >>en_NZ.diff
-
- -diff -a -C 1 nl_NL.orig.aff nl_NL.aff >nl_NL.diff
- -diff -a -C 1 nl_NL.orig.dic nl_NL.dic >>nl_NL.diff
-
- -diff -a -C 1 pl_PL.orig.aff pl_PL.aff >pl_PL.diff
- -diff -a -C 1 pl_PL.orig.dic pl_PL.dic >>pl_PL.diff
-
- -diff -a -C 1 de_DE.orig.aff de_DE.aff >de_DE.diff
- -diff -a -C 1 de_DE.orig.dic de_DE.dic >>de_DE.diff
-
- -diff -a -C 1 fr_FR.orig.aff fr_FR.aff >fr_FR.diff
- -diff -a -C 1 fr_FR.orig.dic fr_FR.dic >>fr_FR.diff
-
- -diff -a -C 1 he_IL.orig.aff he_IL.aff >he_IL.diff
- -diff -a -C 1 he_IL.orig.dic he_IL.dic >>he_IL.diff
-
-$(SPELLDIR)/en.latin1.spl : $(VIM) \
- en_US.aff en_US.dic \
- en_AU.aff en_AU.dic \
- en_CA.aff en_CA.dic \
- en_GB.aff en_GB.dic \
- en_NZ.aff en_NZ.dic
- env LANG=en_US.ISO8859-1 \
- $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB \
- en_NZ" -c q
-
-$(SPELLDIR)/en.utf-8.spl : $(VIM) \
- en_US.aff en_US.dic \
- en_AU.aff en_AU.dic \
- en_CA.aff en_CA.dic \
- en_GB.aff en_GB.dic \
- en_NZ.aff en_NZ.dic
- env LANG=en_US.UTF-8 \
- $(VIM) -e -c "mkspell! $(SPELLDIR)/en en_US en_AU en_CA en_GB \
- en_NZ" -c q
-
-$(SPELLDIR)/en.ascii.spl : $(VIM) \
- en_US.aff en_US.dic \
- en_AU.aff en_AU.dic \
- en_CA.aff en_CA.dic \
- en_GB.aff en_GB.dic \
- en_NZ.aff en_NZ.dic
- $(VIM) -e -c "mkspell! -ascii $(SPELLDIR)/en en_US en_AU en_CA en_GB \
- en_NZ" -c q
-
-$(SPELLDIR)/pl.iso-8859-2.spl : $(VIM) \
- pl_PL.aff pl_PL.dic
- env LANG=pl_PL.ISO8859-2 $(VIM) -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
-
-$(SPELLDIR)/pl.utf-8.spl : $(VIM) \
- pl_PL.aff pl_PL.dic
- env LANG=pl_PL.UTF-8 $(VIM) -e -c "mkspell! $(SPELLDIR)/pl pl_PL" -c q
-
-$(SPELLDIR)/nl.latin1.spl : $(VIM) \
- nl_NL.aff nl_NL.dic
- env LANG=nl_NL.ISO8859-1 $(VIM) -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
-
-$(SPELLDIR)/nl.utf-8.spl : $(VIM) \
- nl_NL.aff nl_NL.dic
- env LANG=nl_NL.UTF-8 $(VIM) -e -c "mkspell! $(SPELLDIR)/nl nl_NL" -c q
-
-$(SPELLDIR)/de.latin1.spl : $(VIM) \
- de_DE.aff de_DE.dic
- env LANG=de_DE.ISO8859-1 $(VIM) -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
-
-$(SPELLDIR)/de.utf-8.spl : $(VIM) \
- de_DE.aff de_DE.dic
- env LANG=de_DE.UTF-8 $(VIM) -e -c "mkspell! $(SPELLDIR)/de de_DE" -c q
-
-$(SPELLDIR)/fr.latin1.spl : $(VIM) \
- fr_FR.aff fr_FR.dic
- env LANG=fr_FR.ISO8859-1 $(VIM) -e -c "mkspell! $(SPELLDIR)/fr fr_FR" -c q
-
-$(SPELLDIR)/fr.utf-8.spl : $(VIM) \
- fr_FR.aff fr_FR.dic
- env LANG=fr_FR.UTF-8 $(VIM) -e -c "mkspell! $(SPELLDIR)/fr fr_FR" -c q
-
-
-$(SPELLDIR)/he.utf-8.spl : $(VIM) \
- he_IL.aff he_IL.dic
- env LANG=he_IL.UTF-8 $(VIM) -e -c "mkspell! $(SPELLDIR)/he he_IL" -c q
diff --git a/src/spell/de_DE.diff b/src/spell/de_DE.diff
deleted file mode 100644
index a7b056a24..000000000
--- a/src/spell/de_DE.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-*** de_DE.orig.aff Fri Jun 17 10:01:18 2005
---- de_DE.aff Mon Jun 27 19:42:20 2005
-***************
-*** 3,4 ****
---- 3,10 ----
-
-+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
-+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
-+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
-+
-+ MIDWORD '
-+
- # (c) copyright by Bjoern Jacke <bjoern@j3e.de>
-*** de_DE.orig.dic Fri Jun 17 10:01:27 2005
---- de_DE.dic Sat Jun 18 19:57:07 2005
-***************
-*** 76258,76259 ****
- zynismusfördernd/A
-! zzgl
-\ No newline at end of file
---- 76258,76260 ----
- zynismusfördernd/A
-! zzgl
-!
diff --git a/src/version.h b/src/version.h
index 7728e9ade..e168db284 100644
--- a/src/version.h
+++ b/src/version.h
@@ -36,5 +36,5 @@
#define VIM_VERSION_NODOT "vim70aa"
#define VIM_VERSION_SHORT "7.0aa"
#define VIM_VERSION_MEDIUM "7.0aa ALPHA"
-#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 2)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 2, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 3)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 3, compiled "