0 votes
135 vues

J'ai réalisé ce matin qu'il est possible de générer des étiquettes en utilisant des chaînes littérales. C'est toutefois un peu un hack, car cela repose sur le fait de savoir qu'Apertium place les étiquettes entre <> et il me semble que l'utilisateur de FlexTrans ne devrait vraiment pas dépendre de tels détails.
Cependant, cela signifie qu'après avoir extrait des informations de base du flux d'entrée (comme la classe du nom) dans une variable de chaîne littérale (par ex., var v_noun_class := string ‘3’), on peut faire quelque chose comme ceci :

let var v_gloss = “<”
append var v_gloss “NPx”
append var v_gloss “_”
append var v_gloss var v_noun_class
append var v_gloss “>”

… puis afficher var v_gloss et le résultat sera synthétisé correctement (comme si j'avais affiché l'étiquette littérale NPx_3)

Dans mon cas, cela signifie que je peux également générer une étiquette de suffixe dans une variable séparée, en changeant simplement NPx en NSx – ce qui est beaucoup plus facile (et plus lisible) que de gérer une grande structure choose whenwhenwhen … pour chaque étiquette d'affixe de sortie qui inclut des informations sur la classe du nom et autre chose.

D'un côté, cela semble être un hack laid, et de l'autre, cela permet une génération plus élégante et lisible d'étiquettes d'affixes complexes. Qu'en pensez-vous de cette approche ?

Cordialement, bruce

Traduit automatiquement depuis English
FLExTrans par (102 points)
réaffiché | 135 vues

1 Réponse

0 votes

Oui, c'est un peu un hack, mais cela semble être un hack utile qui rend finalement votre règle plus facile à maintenir.

Au fait, vous pouvez ajouter plusieurs éléments à une variable (ou à n'importe quoi d'autre) :

APPEND VAR v_gloss LIT_STR “<NPx_” VAR v_noun_class LIT_STR “>”

Bien joué !

Traduit automatiquement depuis English
par (336 points)

Questions connexes

0 votes
1 réponse 42 vues
Quelle est la meilleure façon de gérer les traductions d'un verbe en groupe verbal ? Dans Mato (lg source), nous avons ... et je me demande s'il existe une solution plus simple ?
matoxltr 122 posée juil. 16, 2025
0 votes
1 réponse 137 vues
Comment utiliser une macro ? (Comment répéter des déclarations de règles à plusieurs endroits ?)
rmdiamondl 336 posée mai 8, 2022
0 votes
1 réponse 137 vues
Puis-je travailler sur plusieurs paires de langues avec FLExTrans ?
rmdiamondl 336 posée avr. 22, 2022
0 votes
1 réponse 204 vues
L'aide de la ligne de commande indique -b BOOKS, --books BOOKS Reference list to print (as in Choose ... essayant d'installer ptxprint sur une nouvelle machine Linux également.)
mnjames 1,9k posée mai 10, 2023
0 votes
1 réponse 27 vues
Comment supprimer un mot de la sortie cible ?
Sara 246 posée avr. 28, 2025
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
For we were all baptized by one Spirit so as to form one body—whether Jews or Gentiles, slave or free—and we were all given the one Spirit to drink.
1 Corinthians 12:13
3,048 questions
6,007 réponses
5,672 commentaires
2,028 utilisateurs