Brain storming - app for automatic inclusive writing

Premières expériences

On va récupérer une liste de mots depuis le dictionnaire /usr/share/dict/french :

On peut regarder les premiers mots :

On voit qu'il n'y a pas les majuscules en début de mot, mais qu'il y a les conjugaisons.

On aura souvent besoin de tester si un mot est présent, et c'est environ 50 fois plus rapide de tester l'appartenance à un set qu'à une list en Python :

On définit une constante représentant le séparateur ·:

On va maintenir un dictionnaire qui stockera les alternatives que l'on peut proposer pour chaque mot :

On va aussi garder une liste des mots inclusifs singuliers et pluriels créés au fur et à mesure. Cela permet d'afficher, à chaque traitement automatique, combien de nouveaux mots ont été créés.

Ajouter mot·e si mot et mot-e sont présents

On voit qu'il y a des erreurs, par exemples :

Maintenant pour les mots pluriels :

Encore des faux positifs :

Ces erreurs pourraient être corrigées si on avait une base de données disant si un mot est une conjugaison, un adjectif, un nom (ou plusieurs genres)...

On enlève tous les mots qui n'ont pas de raison d'avoir des alternatives inclusives : (trier à la main les ~5500 mots m'a pris environ une heure)

Cette première passe très simple a ajouté plein de mots, c'était rapide et facile mais au prix d'avoir plein de faux positifs (des mots qui ne devraient pas être rajoutés)...

Ajouter mot·x·se et mot·x·ses si mot-x, mot-se et mot-ses sont présents

Je pense qu'il n'y a pas d'erreurs sur ces 340 mots.

Ajouter mot·teur·trice et mot·teur·trice·s si mot-teur, mot-teurs, mot-trice et mot-trices sont présents

Je pense qu'il n'y a pas d'erreurs sur ces 448 mots.

On voit qu'il manque des mots : "auteure" ou "autrice" n'est pas présent, car "auteure" n'est pas présent dans le dictionnaire chargé au début.

Ajouter mot·eau·elle et mot·eaux·elles si mot-eau, mot-eaux, mot-elle et mot-elles sont présents

On voit que là aussi ça donne plein d'erreur ! Seuls les mots suivants fonts sens :

Et aussi mot-au-elle et mot-aux-elles si mot-au, mot-aux, mot-elle et mot-elles sont présents ?

Ce dernier test est clairement une mauvaise idée, matérielle n'est PAS le féminin de matériau.

Ajouter mot·er·ère et mot·er·ère·s si mot-er, mot-ers, mot-ère et mot-ères sont présents

On voit que là aussi ça donne des erreurs :

Ces erreurs pourraient être évitées si on disposait d'étiquettes sur chaque mot (verbe, nom, adjectif, etc).

Ajouter mot-l·le et mot-n·ne si mot-l, mot-lle ou mot-n et mot-nne sont présents (et pluriels)

On voit que là aussi ça donne PLEIN d'erreurs :

Ces erreurs pourraient être évitées si on disposait d'étiquettes sur chaque mot (verbe, nom, adjectif, etc). La plupart des erreurs viennent de mots qui sont un nom au masculin (sermon) et un verbe conjugué au présent de l'indicatif qui ressemble à une forme féminine du mot (sermonne).

Et pour les mots en mot-l et mot-lle :

On voit que là aussi ça donne des erreurs :

Ces erreurs pourraient être évitées si on disposait d'étiquettes sur chaque mot (verbe, nom, adjectif, etc).

On a effacé l'alternative à fils/fille, il faut la rajouter manuellement :

Ajouter les cas spéciaux à la main

J'ai des doutes sur ce cas là : celleux est le mot que j'utilise mais quid du cas singulier ?

TODO ajouter les mots qu'il manque ?

Prendre un mot et proposer des variantes

C'est trivial, maintenant qu'on a construit le dictionnaire alternatives :

On a construit BEAUCOUP de mots alternatifs :

La fonction est HYPER simple :

Quelques exemples :

Ajouter ces mots dans un fichier

On a rajouté quelques 50 000 mots à une liste qui en contenait 138 000 ! C'est DINGUE !

Cette liste peut être utilisée pour ajouter ces mots au dictionnaire (/usr/share/dict/french) et permettre à la correction orthographique du système d'accepter les mots comme "abaissé-e" ou "abasourdi·e".

Conclusion

Fin pour aujourd'hui !