]> git.lyx.org Git - dictionaries.git/blob - dicts/info/zulu/README-zu_ZA.txt
Big updates of Czech dictionaries.
[dictionaries.git] / dicts / info / zulu / README-zu_ZA.txt
1 How to use this dictionary framework
2 ====================================
3
4 Each dictionary has its own directory using the ISO639 language code.  Eg
5 Afrikaans uses af.  In each directory is an aspell, myspell and in some cases
6 an ispell directory - these contain the speller specific information.
7
8 Files and directories
9 ---------------------
10
11 |-- Makefile
12 |-- af
13 |   |-- COPYING
14 |   |-- CREDITS
15 |   |-- ChangeLog
16 |   |-- INSTALL
17 |   |-- Makefile
18 |   |-- README
19 |   |-- VERSION
20 |   |-- aspell
21 |   |   |-- Copyright
22 |   |   |-- info.in
23 |   |-- ispell
24 |   |   |-- README
25 |   |   `-- afrikaans.aff
26 |   |-- myspell
27 |   |   |-- README_af_ZA.txt
28 |   |   |-- af_ZA.aff
29 |   |-- wordlists
30 |   |   |-- wordlist.nieuwoudt.in
31
32 Prerequisites
33 ============
34 aspell - needs prezip-bin (since 0.60, was word-list-compress for 0.50), 
35 which is contained in the aspell package for your system. Other tools 
36 needed to package and build are located in the utils directory
37
38 myspell - the tools needed are in the utils directory
39
40
41 Required Files
42 ==============
43
44 ispell
45 ------
46 The framework can build ispell but it is disabled by default because we are not
47 completely sure how to build ispell dictionaries.
48
49 aspell
50 ------
51 Copyright - details of the copyright holders etc.  The actual copyright text
52 is added based on a line in the info.in file.
53 info.in - some basic definitions for the aspell package including copyright
54 holders, license, language name etc.
55 lang.dat - the language data file, used along with info.in.
56 What can be problematic in the language data file is the "special" line:
57         special ' **- - -*- 4 -*- 6 -*-
58 It is simple to understand.  The above says ' (apostrophe) is permissible at the
59 beginning of a word and the middle. - (dash) is allowed in the middle of a
60 word, etc
61 Check the Afrikaans one for a good understanding of its construction.  If 
62 you need more details then look at the README instructions in the latest 
63 aspell dictionary build system (the aspell-lang package):
64         ftp://ftp.gnu.org/gnu/aspell/aspell-lang-20071024.tar.bz2
65
66 myspell
67 -------
68 README_lang_REGION.txt - a README containing Copyright info and installation
69 instructions.
70 lang_REGION.aff - the affix file.  Mostly these are based on ispell affix
71 compression.  Follow the instructions ?here? for converting an ispell affix file
72 to myspell.  An affix file allows you to compress a wordlist and expand it to
73 the exact same set of words.  If you have not developed affix rules for the
74 language then the minimum you need is a SET and TRY line.
75
76 SET - the character set used by the language.  Only ISO8859 character sets can
77 be used in MySpell.  Although I think you can define your own internal mapping
78 if your language does not match an ISO charset. (Need to confirm this)
79 TRY - a list of letters in order of frequency.  The python script 
80 src/wordlist/letter-frequency.py allows you to create a frequency list.
81
82 Other useful entries:
83 MAP - map similar characters eg eêë
84 REP - create REPlacement maps that are useful for mapping common spelling
85 mistakes. eg REP ph f - as in phone.
86
87 Affix compression:
88 SFX - a suffix
89 PFX - a prefix
90 FIXME add more details on creating these.
91
92 Setting up a new language
93 -------------------------
94 Apart from input files required by each of the different spellcheckers, as
95 listed above, the main requirements are a wordlist and some definitions in the
96 language Makefile.
97
98 The wordlist is simply a text list of words one per line - currently we store these in UTF-8 to
99 ensure ease of use in the future.  Lines that start with a # are treated as
100 comments and removed when the wordlist is processed.  The wordlists can be
101 called anything although we name them wordlist.*.in.  But as you list them in
102 the Makefile you can name them as you please.  We have kept existing wordlists
103 in tact and used separate files for new additions.  In English we have grouped
104 similar concepts together eg. bird names, city names, etc.  Some languages
105 group words according to parts of speech which may aid later use with advances
106 in grammar checkers or in agglutinative languages that may have rules as to how
107 words may be joined together.
108
109 The Makefile calls the generic Makefile called utils/Makefile.language.  The
110 language Makefile contains a number of definitions such as the name of the
111 language its character set, etc.  If you need to understand some of the build
112 process steps then look at the generic Makefile.
113
114 Add a VERSION file.  We default to using the date as spellcheckers are really
115 enhancements and refinements of wordlists, so a newer date should always
116 indicate a better spellchecker.
117
118 Also add you language to the Makefile in the dict/ directory.  Both as a build
119 rule and as a TARGET.
120
121
122 Building
123 --------
124
125 make - generate all dictionaries for that language
126 make count - will return simple stats on your wordlist
127 make aspell - create the aspell dictionary (relatively quick)
128 make myspell - create a myspell dictionary (looooong)
129 make clean - cleans up all packaged files
130
131 Outputs
132 -------
133 All outputs are placed in the respective spellchecker directories.
134
135 aspell - creates a tarball that would be compiled and installed on the target platform
136
137 myspell - creates a few outputs.  
138         lang_REGION.zip - the basic MySpell spellchecker usable in OpenOffice.org
139         pack-lang_REGION.xip - as above but installable by the offline installer
140         lang-REGION.xpi - the same as lang_REGION.zip but installable in Mozilla
141
142 Resources - South African
143 -------------------------
144
145 Common Names of fish - http://www.fishbase.org/search.cfm
146 Birds - 
147         Robert's Birds list - http://web.uct.ac.za/depts/fitzpatrick/docs/listintro.html
148         http://www.wildlifesafari.info/south_african_birds.htm
149         http://www.wildlifesafari.info/southern_africa_bird_checklist.htm
150 Trees - http://www.wildlifesafari.info/southern_africa_tree_list.html
151 Endangered species -
152 http://www.unep-wcmc.org/index.html?http://sea.unep-wcmc.org/isdb/CITES/Taxonomy/?displaylanguage=eng~main
153 http://www.e-gnu.com/check_005.html
154 http://www.e-gnu.com/check_003.html
155 http://www.e-gnu.com/check_004.html
156 Listed companies:
157 http://www.jse.co.za/listed/companies/la.html
158 Names Changes:
159 http://africanhistory.about.com/cs/southafrica/a/sa_new_name.htm
160 www.sapo.co.za - get downloadable postal codes for names of towns and suburbs