1The spell files included here are in Vim's special format. You can't edit 2them. See ":help spell" for more information. 3 4 5COPYRIGHT 6 7The files used as input for the spell files come from the OpenOffice.org spell 8files. Most of them go under the LGPL or a similar license. 9 10Copyright notices for specific languages are in README_??.txt. Note that the 11files for different regions are merged, both to save space and to make it 12possible to highlight words for another region different from bad words. 13 14Most of the soundslike mappings come from Aspell ??_phonet.dat files: 15ftp://ftp.gnu.org/gnu/aspell/dict/. Most go under the GPL or LGPL copyright. 16 17 18GENERATING .SPL FILES 19 20This involves downloading the files from the OpenOffice.org server, applying a 21patch and running Vim to generate the .spl file. To do this all in one go use 22the Aap program (www.a-a-p.org). It's simple to install, it only requires 23Python. 24 25Before generating spell files, verify your system has the required locale 26support. Source the check_locales.vim script to find out. If something is 27missing, see LOCALE below. 28 29 30You can also do it manually: 311. Fetch the right spell file from: 32 http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries 33 342. Unzip the archive: 35 unzip LL_RR.zip 36 373. Apply the patch: 38 patch < LL_RR.diff 39 404. If the language has multiple regions do the above for each region. E.g., 41 for English there are five regions: US, CA, AU, NZ and GB. 42 435. Run Vim and execute ":mkspell". Make sure you do this with the correct 44 locale, that influences the upper/lower case letters and word characters. 45 On Unix it's something like: 46 env LANG=en_US.UTF-8 vim 47 mkspell! en en_US en_AU en_CA en_GB en_NZ 48 496. Repeat step 5 for other locales. For English you could generate a spell 50 file for latin1, utf-8 and ASCII. ASCII only makes sense for languages 51 that have very few words with non-ASCII letters. 52 53Now you understand why I prefer using the Aap recipe :-). 54 55 56MAINTAINING A LANGUAGE 57 58Every language should have a maintainer. His tasks are to track the changes 59in the OpenOffice.org spell files and make updated patches. Words that 60haven't been added/removed from the OpenOffice lists can also be handled by 61the patches. 62 63It is important to keep the version of the .dic and .aff files that you 64started with. When OpenOffice brings out new versions of these files you can 65find out what changed and take over these changes in your patch. When there 66are very many changes you can do it the other way around: re-apply the changes 67for Vim to the new versions of the .dic and .aff files. 68 69This procedure should work well: 70 711. Obtain the zip archive with the .aff and .dic files. Unpack it as 72 explained above and copy (don't rename!) the .aff and .dic files to 73 .orig.aff and .orig.dic. Using the Aap recipe should work, it will make 74 the copies for you. 75 762. Tweak the .aff and .dic files to generate the perfect .spl file. Don't 77 change too much, the OpenOffice people are not stupid. However, you may 78 want to remove obvious mistakes. And remove single-letter words that 79 aren't really words, they mess up the suggestions (English has this 80 problem). You can use the "fixdup.vim" Vim script to find duplicate words. 81 823. Make the diff file. "aap diff" will do this for you. If a diff would be 83 too big you might consider writing a Vim script to do systematic changes. 84 Do check that someone else can reproduce building the spell file. Send the 85 result to Bram for inclusion in the distribution. Bram will generate the 86 .spl file and upload it to the ftp server (if he can't generate it you will 87 have to send him the .spl file too). 88 894. When OpenOffice makes a new zip file available you need to update the 90 patch. "aap check" should do most of the work for you: if there are 91 changes the .new.dic and .new.aff files will appear. You can now figure 92 out the differences with .orig.dic and .orig.aff, adjust the .dic and .aff 93 files and finally move the .new.dic to .orig.dic and .new.aff to .orig.aff. 94 955. Repeat step 4. regularly. 96 97 98LOCALE 99 100For proper spell file generation the required locale must be installed. 101Otherwise Vim doesn't know what are letters and upper-lower case differences. 102Modern systems use UTF-8, but we also generate spell files for 8-bit locales 103for users with older systems. 104 105On Ubuntu the default is to only support locales for your own language. To 106add others you need to do this: 107 sudo vim /var/lib/locales/supported.d/local 108 Add needed lines from /usr/share/i18n/SUPPORTED 109 sudo dpkg-reconfigure locales 110 111When using the check_locales.vim script, you need to exit Vim and restart it 112to pickup the newly installed locales. 113