1 # phonetic suggestions by PHONE and optional ph field of dictionary words
2 # Documentationo of PHONE: http://aspell.net/man-html/Phonetic-Code.html
4 # phonetic_english.h - phonetic transformation rules for use with phonetic.c
5 # Copyright (C) 2000 Björn Jacke
7 # This rule set is based on Lawrence Phillips original metaphone
8 # algorithm with modifications made by Michael Kuhn in his
9 # C implantation, more modifications by Björn Jacke when
10 # converting the algorithm to a rule set and minor
11 # touch ups by Kevin Atkinson
13 # This library is free software; you can redistribute it and/or
14 # modify it under the terms of the GNU Lesser General Public
15 # License version 2.1 as published by the Free Software Foundation;
17 # This library is distributed in the hope that it will be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 # Lesser General Public License for more details.
22 # You should have received a copy of the GNU Lesser General Public
23 # License along with this library; if not, write to the Free Software
24 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 # Björn Jacke may be reached by email at bjoern.jacke@gmx.de
30 # 2000-01-05 Björn Jacke <bjoern.jacke@gmx.de>
31 # - first version with translation rules derived from
32 # metaphone.cc distributed with aspell 0.28.3
33 # - "TH" is now representated as "@" because "0" is a
35 # - removed TH(!vowel) --> T; always use TH --> # instead
36 # - dropped "^AE" -> "E" (redundant)
37 # - "ing" is transformed to "N", not "NK"
38 # - "SCH(EO)" transforms to "SK" now
39 # - added R --> SILENT if (after a vowel) and no (vowel or
40 # "y" follows) like in "Marcy" or "abort"
41 # - H is SILENT in RH at beginning of words
42 # - H is SILENT if vowel leads and "Y" follows
43 # - some ".OUGH.." --> ...F exceptions added
44 # - "^V" transforms to "W"
45 # 2000-01-07 Kevin Atkinson <kevinatk@home.com>
46 # Converted from header to data file.
48 # 2007-08-23 László Németh <nemeth AT OOo>
49 # Add PHONE header and PHONE keywords
114 PHONE OH(AEIOUY)-^ *H
115 PHONE OR(AEIOUY)-^ *R
142 PHONE UH(AEIOUY)-^ *H
143 PHONE UR(AEIOUY)-^ *R
160 #The rules in a different view:
164 # Beginning of word: "gn", "kn-", "pn-", "wr-" ----> drop first letter
165 # "Aebersold", "Gnagy", "Knuth", "Pniewski", "Wright"
167 # Beginning of word: "x" ----> change to "s"
168 # as in "Deng Xiaopeng"
170 # Beginning of word: "wh-" ----> change to "w"
172 # Beginning of word: leading vowels are transformed to "*"
174 # "[crt]ough" and "enough" are handled separately because of "F" sound
177 # A --> A at beginning
180 # B --> B unless at the end of word after "m", as in "dumb", "McComb"
182 # C --> X (sh) if "-cia-" or "-ch-"
183 # S if "-ci-", "-ce-", or "-cy-"
184 # SILENT if "-sci-", "-sce-", or "-scy-", or "-cq-"
185 # K otherwise, including in "-sch-"
187 # D --> K if in "-dge-", "-dgy-", or "-dgi-"
190 # E --> A at beginnig
195 # G --> SILENT if in "-gh-" and not at end or before a vowel
196 # in "-gn" or "-gned" or "-gns"
197 # in "-dge-" etc., as in above rule
198 # K if before "i", or "e", or "y" if not double "gg"
200 # K otherwise (incl. "GG"!)
202 # H --> SILENT if after vowel and no vowel or "Y" follows
203 # or after "-ch-", "-sh-", "-ph-", "-th-", "-gh-"
204 # or after "rh-" at beginning
207 # I --> A at beginning
212 # K --> SILENT if after "c"
221 # O --> A at beginning
224 # P --> F if before "h"
229 # R --> SILENT if after vowel and no vowel or "Y" follows
232 # S --> X (sh) if before "h" or in "-sio-" or "-sia-"
233 # SK if followed by "ch(eo)" (SCH(EO))
236 # T --> X (sh) if "-tia-" or "-tio-"
237 # 0 (th) if before "h"
238 # silent if in "-tch-"
241 # U --> A at beginning
244 # V --> V if first letter of word
247 # W --> SILENT if not followed by a vowel
248 # W if followed by a vowel
252 # Y --> SILENT if not followed by a vowel
253 # Y if followed by a vowel