Ramener les ligatures « œ » et « æ » à « oe » et « ae »
L'Œuvre de Zola, que la BnF écrit avec la ligature, était introuvable à qui tape « oeuvre » : NFD sépare les accents mais laisse les ligatures. Table explicite plutôt que NFKD, qui aurait aussi transformé les exposants, les chiffres romains et les espaces insécables. Une normalisation de recherche doit rester prévisible. Sept colonnes normalisées en dépendent, dont cinq portent une unicité. Le rattrapage au démarrage est donc étendu aux envies, séries, revues et numéros — qui ne calculaient leurs formes qu'à l'écriture — et refuse toute collision AVANT d'écrire : sinon l'exception tomberait au démarrage et le serveur ne se lancerait plus. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -16,26 +16,6 @@ Le travail visuel de fond (couleurs, typographie, mise en page) est repoussé vo
|
||||
|
||||
---
|
||||
|
||||
## Recherche : la ligature « œ » n'est pas réduite à « oe »
|
||||
|
||||
Repéré le 2026-08-18 en implémentant la liste d'envies. `NormalisationTexte.Normaliser`
|
||||
décompose en **NFD**, qui sépare les accents mais laisse les ligatures intactes — seul NFKD les
|
||||
défait. Conséquence : `L'Œuvre` et `L'oeuvre` ne se rencontrent jamais.
|
||||
|
||||
Ce n'est pas propre à la liste d'envies : la même fonction alimente la **recherche du catalogue**
|
||||
et la **clé unique des auteurs**. Zola a écrit *L'Œuvre*, que la BnF orthographie avec la
|
||||
ligature ; un utilisateur qui tape « oeuvre » ne le trouvera pas, et ne verra pas non plus le
|
||||
livre grisé dans la bibliographie.
|
||||
|
||||
Correction envisagée : passer en NFKD, ou traiter explicitement `œ`/`Œ` et `æ`/`Æ`. **Non fait
|
||||
volontairement** — changer cette fonction déplace deux invariants en base (les colonnes
|
||||
normalisées et l'index unique `CleRegroupement`). `ServiceRenormalisation` sait recalculer les
|
||||
colonnes au démarrage, mais la fusion d'auteurs que la nouvelle règle provoquerait mérite d'être
|
||||
regardée avant. Documenté par un test (`CleOeuvreTests.Ne_reduit_pas_la_ligature_oe`) pour que
|
||||
la limite reste visible.
|
||||
|
||||
---
|
||||
|
||||
## Bibliographie : ce qui reste à creuser
|
||||
|
||||
La bibliographie par auteur est implémentée (voir `CLAUDE.md`). Deux pistes non traitées :
|
||||
|
||||
Reference in New Issue
Block a user