0 votes
520 vues

Je remarque ce qui semble être une différence binaire entre certains identifiants de termes qui apparaissent dans Major Biblical Terms et ceux utilisés dans les fichiers de rendu du projet. Les identifiants de termes correspondants ont tous l'air visuellement identiques si vous ouvrez le xml dans un éditeur. Mais je prototypais un plug-in et mon code a remarqué la différence. Peut-être est-ce quelque chose comme composé vs non composé, mais je ne connais pas du tout l'hébreu. Je publie des liens vers deux versions de l'identifiant du terme Shem. L'un provient de Major Biblical Terms. L'autre provient de TermRenderings.xml sur l'un de mes projets. Les deux identifiants ont l'air identiques, mais un visualiseur de fichiers binaires montre qu'ils sont différents.
Merci pour toute suggestion.
stevepence

Shem depuis un fichier de rendus
Shem depuis Major Terms

Traduit automatiquement depuis English
Paratext par (127 points) | 520 vues

4 Réponses

0 votes
Meilleure réponse

Ceci est probablement plus de détails que vous ne voulez en avoir, mais voici mon point de vue sur les problèmes de normalisation de l'hébreu. Unicode a mis au point un ordre canonique des diacritiques qui n'était pas idéal sur le plan linguistique. Comme l'ordre des diacritiques entre les diacritiques non interactives peut être arbitraire, ils ont décidé de ne pas changer l'ordre lorsqu'on leur a demandé. Mais il y a certaines situations où l'ordre est important pour les diacritiques interactives en hébreu et cet ordre est perdu par la normalisation. Pour contourner cela, les gens utilisent le CGJ (U+034F) pour permettre un ordre différent des diacritiques. Cela devrait être considéré comme faisant partie de l'orthographe du mot.

Tandis que tout cela était débattu, les polices de caractères n'étaient souvent pas conçues pour gérer l'ordre canonique Unicode. Mais cela a été corrigé depuis longtemps et les polices peuvent gérer le texte ordonné canoniquement par Unicode sans problème.

Tout cela pour dire que je ne vois aucune raison pour laquelle les données ne devraient pas être stockées dans une forme normale Unicode (NFC, NFD que je pense identiques en hébreu), mais que si vous avez des données héritées (anciennes données Unicode), il faut faire attention à la normalisation. En particulier, vérifiez le mot pour Jérusalem (si ma mémoire floue me sert, à propos des mots qui contiennent des problèmes d'ordre des diacritiques) qui devrait contenir un CGJ (ou examiné attentivement avec une représentation visuelle devant vous).

Quant à l'exemple de Lorna, il ne devrait y avoir aucune difficulté avec ces deux diacritiques car ils sont non interactifs (l'un au-dessus, l'autre en dessous).

Traduit automatiquement depuis English
par (656 points)
0 votes

Pour découvrir quels caractères sont dans une chaîne, vous pouvez utiliser UniView 14 . Collez votre texte dans la zone où il est écrit « text area », puis cliquez sur la flèche pointant vers le bas juste sous la zone de texte et vous verrez une liste des caractères (forme du caractère, valeur Unicode et description).

Si votre soupçon est correct et que la différence est due à la forme de normalisation, vous voudrez peut-être inclure une étape de normalisation dans votre plug-in.

Traduit automatiquement depuis English
par (296 points)
0 votes

ShemFrompmcdblRendering.txt chaîne d'encodage : U+05E9 U+05B5 U+05C1 U+05DD
ShemFromMajorTerms.txt chaîne d'encodage : U+05E9 U+05C1 U+05B5 U+05DD

Si nous regardons les propriétés Unicode, je crois que l'encodage de ShemFromMajorTerms.txt est incorrect et que le document Major Terms peut avoir besoin d'être normalisé.
Avertissement : Je sais que l'hébreu a certains problèmes de normalisation Unicode et je ne suis pas à jour sur les endroits où la normalisation ne devrait pas être suivie.

Traduit automatiquement depuis English
par (329 points)

stevepence,
Je soupçonne qu'avec plus d'organisations écrivant leurs propres plug-ins, d'autres peuvent rencontrer votre problème. Cela n'a tout simplement pas affecté un utilisateur de Paratext, mais apparemment cela vous affecte si vous écrivez des plug-ins. Si la liste Major Biblical terms n'utilise pas les meilleures pratiques pour l'encodage de l'hébreu, alors peut-être pourriez-vous discuter de vos besoins avec anon291708.

Traduit automatiquement depuis English
0 votes

Merci à tous ceux qui ont répondu. La réponse de chacun a été extrêmement utile pour comprendre ce problème. Je suis très reconnaissant !

Je ne prétendrais pas commenter quel fichier a des encodages « corrects » - certainement un sujet complexe. Ma préoccupation très limitée est d'être capable d'utiliser les identifiants de manière non ambiguë comme clés pour les jeux de données. Évidemment, l'outil Biblical Terms est capable de lier correctement les identifiants dans différents fichiers malgré les différences dans leurs représentations binaires, probablement par une normalisation à la volée.

Comme je ne fais que prototyper pour le moment, c'est aussi loin que j'ai besoin d'aller maintenant. Une fois que je commencerai à coder le plug-in lui-même, j'aurai besoin de creuser les détails de la façon dont PT fait ce qu'il fait dans ce domaine.

Je comprends maintenant le problème beaucoup mieux. Merci à tous !

stevepence

Traduit automatiquement depuis English
par (127 points)

Dans Paratext, tous les identifiants de termes et les identifiants de rendu sont normalisés au format NFC lors du chargement pour contourner ce problème. En fait, presque toutes les données sont normalisées en interne lors de la comparaison de deux chaînes en raison de ce problème. Je considère cela comme un problème de conception d'Unicode, mais c'est un autre sujet. :stuck_out_tongue_winking_eye:

EDIT : De plus, si vous créez un plug-in Paratext, vous devriez utiliser IProject.GetBiblicalTermRenderings et IPluginHost.GetBiblicalTermList / IProject.BiblicalTermList pour gérer les Biblical Terms - ce qui devrait éviter ce problème.

Traduit automatiquement depuis English

Merci. Actuellement, je travaille toujours en VBA pour finaliser un prototype et obtenir des retours des utilisateurs. Je n'ai pas encore commencé à faire du vrai travail avec l'api. J'espère certainement que l'api masquera tous ces détails, mais j'apprécie l'aide de tous pour comprendre les problèmes - même si je n'ai jamais à y aller.

stevepence

Traduit automatiquement depuis English

Questions connexes

0 votes
2 réponses 199 vues
When downloading Paratext 8, I'm told: The Online file is smaller and may be used if you are installing while connected to the ... to download that extra 85Mb, if I don't have to.
jeffh 1,4k posée mars 23, 2017
0 votes
3 réponses 409 vues
We have a problem with language IDs not matching which prevents the Interlinearizer from working. The KPZ project was registered ... or how I can look at those changes. Iver+Larsen
Iver Larsen 869 posée janv. 24, 2020
0 votes
2 réponses 360 vues
In PT8 when I compare two project (of the same language) there were two arrows to go backwards or forwards to ... they do not work for difference between two different projects.
anon784407 105 posée janv. 13, 2020
0 votes
0 réponses 154 vues
Biblical Term rendering discussion not | Biblical Term rendering description e | The entire history leading to a deci ... Terms tool. See also: Introduction to Biblical Term notes
[Expert]
anon421222
735
posée févr. 23, 2017
0 votes
2 réponses 639 vues
Nous avons un utilisateur qui a un certain nombre de rendus associés à la liste des Termes bibliques clés du NT ... dans l'ordre alphabétique pour ce processus. Merci, james_post
[Moderator]
james_post
2,1k
posée nov. 10, 2021
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
May the God who gives endurance and encouragement give you the same attitude of mind toward each other that Christ Jesus had.
Romans 15:5
3,048 questions
6,007 réponses
5,672 commentaires
2,028 utilisateurs