Œ, œ, like in œuf (egg) or cœur (heart), œuvre (multiple translations and meanings so I won’t detail here, it doesn’t matter), etc.
Æ, æ, like in nævus (the scientific term for mole (the dot on the skin, not the animal) or others.
æ is rarely used (I think it’s always scientific/medical terms from Latin?), but œ, however, is quite present in the French language.
Sadly, these special characters aren’t present on the French keyboard layout and a lot of people simply write “oe” or “ae” instead.
But some users have custom layouts, and autocorrection from smartphones, or some other writing help systems often automatically correct the words using the proper “merged characters”, like “oeuvre” → “œuvre”.
Currently, the search processes “oe” and “œ” as different strings, which leads to different results that should be common instead.
SELECT to_tsvector('french', E'Cette oeuvre d\\'art n\\'est pas une œuvre.');
to_tsvector
------------------------------------
'art':4 'cet':1 'oeuvr':2 'œuvr':9
(1 row)
Pour une raison quelconque, je pensais que la gestion des diacritiques, des ligatures et autres était un problème résolu en matière de recherche… J’imagine que non ?
En tant que , je soutiens certainement cela. Il semble que nous pourrions utiliser la fonction unaccent de PostgreSQL qui supprime les accents et gère également les ligatures courantes.
Et en tant que Français, détestez-vous aussi la complexité inutile de cette langue (bien qu’intéressante) autant que moi ?
Désolé pour cette petite touche d’humour hors sujet
Devrions-nous simplement modifier l’implémentation de search_ignore_accents pour utiliser unaccent ou aurions-nous besoin d’un tout nouveau paramètre ?
J’aime bien changer simplement l’implémentation de l’ignorance des accents car il y a une parité avec ce que PG fait de toute façon.
C’est une bonne question
Cela fonctionnerait certainement pour mais il pourrait y avoir d’autres locales où cela ne fonctionnerait pas comme prévu ?
Après avoir examiné les fichiers /usr/share/postgresql/13/tsearch_data/unaccent.rules, il semble que ce soit assez sûr.
Je soutiens définitivement la suppression du passage de notre paramètre search_ignore_accents à l’utilisation de unaccent de postgresql @nbianca pouvez-vous ajouter cela à votre liste ?