Closed hiwelo closed 8 years ago
Le plus petit dénominateur commun qui n'est pas celui qui facilite le plus la compréhension. Le découpage par morphème paraît linguistiquement plus juste :confused:
Sauf qu'en fait c'est vite le bordel si tu veux te baser sur les morphèmes puisque des mots en apparence similaires ont des constructions différentes :
Du coup, ça rend le truc impossible avec une expression régulière et t'es obligé d'avoir un dictionnaire avec l'étymologie de chaque mot...
Et dans tous les cas, ça me parait pas mal de se baser sur un document de référence.
Là où dans tous les cas on va avoir un problème par contre, c'est pour repérer les féminins en -teuse genre chanteuse.
Ah y a apparemment moyen de faire mumuse avec Hunspell :
pierre@quai10 ~> echo "chanteur" | hunspell -d fr -s
chanteur chanteuse
pierre@quai10 ~> echo "acteur" | hunspell -d fr -s
acteur actrice
pierre@quai10 ~> echo "maire" | hunspell -d fr -s
maire maire
pierre@quai10 ~> echo "artisan" | hunspell -d fr -s
artisan artisane
pierre@quai10 ~> echo "nombreux" | hunspell -d fr -s
nombreux nombreuse
Tu sais sur quoi il se base ?
Pour le français, il se base sur Dicollecte. On pourrait essayer de parser leur fichiers directement en PHP, mais le format est assez violent.
Alors en fait Dicollecte fournit un lexique très complet en CSV donc j'ai fait une classe pour le parser. Du coup, pour trouver le suffixe, je fais la différence entre les formes masculines et féminines : https://github.com/Rudloff/epikoinos/blob/develop/classes/Converter.php#L43
Je me base sur ça : http://www.haut-conseil-egalite.gouv.fr/IMG/pdf/hcefh__guide_pratique_com_sans_stereo-_vf-_2015_11_05.pdf Et ils conseillent la forme acteur.rice (ils prennent le plus petit dénominateur commun, je pense).
Il faut de toute façon que j'ajoute tous les suffixes.