French Phonetic Algorithms

The phonetics/french module gathers phonetic algorithms for the French language.

Summary

Modules under the talisman/phonetics/french namespace:

fonem

Reference: http://www.persee.fr/doc/pop_0032-4663_1981_num_36_6_17248

Bouchard Gérard, Brard Patrick, Lavoie Yolande. FONEM : Un code de transcription phonétique pour la reconstitution automatique des familles saguenayennes. In: Population, 36ᵉ année, n°6, 1981. pp. 1085-1103;

The “FONEM” algorithm is a French phonetic algorithm that was designed to match family names from Saguenay.

import fonem from 'talisman/phonetics/french/fonem';

fonem('Beaulac');
>>> 'BOLAK'

phonetic

Reference: http://www.roudoudou.com/phonetic.php

Author: Edouard Bergé

The “phonetic” algorithm is able to process any French word to produce a “human-readable” code often really near to the actual pronunciation of the word.

import phonetic from 'talisman/phonetics/french/phonetic';

phonetic('gendarme');
>>> 'JANDARM'

phonex

Reference:
http://sqlpro.developpez.com/cours/soundex/

Author: Frédéric Brouard

The “phonex” algorithm, designed to work with French names, is an attempt to improve the classical Soundex and Soundex2 algorithms by adapting their design to some specificities of the French language.

import phonex from 'talisman/phonetics/french/phonex';

phonex('Henri');
>>> 'H1RI'

sonnex

Reference: https://github.com/Zigazou/Sonnex

Author: Frédéric Bisson

The “sonnex” algorithm is able to process any French word and produces a quite accurate phonetic representation of them.

Note that the resulting code can contains sounds encoded as numbers to clearly distinguish them rather than keeping the combination of letters producing them in the French language. (Example: the sound “on” will be encoded as “3”).

import sonnex from 'talisman/phonetics/french/sonnex';

sonnex('ontologie');
>>> '3toloji'

soundex

Reference:
http://sqlpro.developpez.com/cours/soundex/

French version of the classical Soundex algorithm.

import soundex from 'talisman/phonetics/french/soundex';

soundex('Florentin');
>>> 'F465'

soundex2

Reference:
http://sqlpro.developpez.com/cours/soundex/

Improved version of the French Soundex.

Note that the produced code will only contain letter rather than a leading letter followed by numbers.

import soundex2 from 'talisman/phonetics/french/soundex2';

soundex2('Florentin');
>>> 'FLRN'