Mudlet: Ajouter les chaînes manquantes pour la traduction

Créé le 9 sept. 2018  ·  27Commentaires  ·  Source: Mudlet/Mudlet

Bref résumé du problème / Description de la fonctionnalité demandée :

Quelques messages dans le client ne sont pas encore marqués pour la traduction, ne seraient pas localisés à partir d'aujourd'hui :

À suivre..

i18n & l10n

Tous les 27 commentaires

Les chaînes mentionnées ci-dessus dans ctelnet.cpp ont parfois des caractères d'espace excessifs comme dans
[ INFO ] - text
par opposition à
[ INFO ] - text
comme il est utilisé ailleurs. Peut-être profiter de cette occasion pour unifier, car le défilement de connexion alterne actuellement.
edit: Merde, github supprimera le caractère double espace après le premier [INFO] et avant le moins là-bas.

Impossible de trouver actuellement l'emplacement de création de ces messages :
image
J'ai recherché dans ce référentiel le texte "Module Lua", mais n'a pas produit.

Merci Vadi. Peut-être qu'il y a quelque chose qui ne va pas avec la fonction de recherche ici sur github.com et je devrais vraiment rechercher moi-même les fichiers téléchargés. Quel dommage!

SlySven a rapporté :

Un endroit que j'ai repéré qui n'a pas été alimenté avec des textes emballés tr (....) était le type d'élément comboBox à la fin de chaque élément de déclenchement - donc ceux-ci ne seront jamais traduits dans d'autres langues ...

Vous ne savez pas où cela se trouve, module tiers ?
image

@Kebap a écrit :

Les chaînes mentionnées ci-dessus dans ctelnet.cpp ont parfois des caractères d'espace excessifs comme dans
[ INFO ] - texte
par opposition à
[ INFO ] - texte
comme il est utilisé ailleurs. Peut-être profiter de cette occasion pour unifier, car le défilement de connexion alterne actuellement.
edit: Merde, github supprimera le caractère double espace après le premier [INFO] et avant le moins là-bas.

L'espacement dans le [ WORD ] - été ~ tweaked twiddled ~ frobnicated de sorte qu'il y ait un ou deux espaces (selon la longueur du MOT) entre le WORD et le [ ou ] (le même des DEUX côtés) puis suffisamment d'espaces après le ] et le - pour que tous les différents messages aient le même nombre de caractères - si je remplace les espaces par # c'est peut-être plus facile à voir car ils deviennent :
[##OK##]##-#
[##LUA##]#-#
[#INFO#]##-#
[#WARN#]#-#
[#ALERT#]#-#
[#ERROR#]#-#

Cela a été fait avec le désir de s'assurer que tous les messages ont la même longueur de préfixe. Cependant, le code existant n'est pas encore bon pour les traductions (je pense que j'ai du code caché quelque part qui {sur le changement de langue} a parcouru tous les en-têtes traduits et a calculé l'espacement à utiliser pour eux et pour tous les textes non traduits - même ceux avec un seul préfixe de marqueur de message non traduit supplémentaire (la valeur par défaut de Qt est # en l'occurrence) afin que cela fonctionne toujours pour les cas de traduction incomplète...

... cependant, ce n'est pas quelque chose que Vadim a trouvé s'il fouillait dans mes précédentes tentatives de code I18n, en supposant que je l'aie jamais publié... :déçu:

Déplaçons cette discussion au #2005, voulez-vous ?

image

main.cpp autour de cette zone , recherchez "show_splash"

La fenêtre contextuelle de connexion affichera le bouton "Annuler" qui reste en anglais et n'est pas encore disponible pour la traduction.

image

Probablement les chaînes de connexion ci-dessus

Re: Texte de l'écran de démarrage - la traduction n'est pas simple car l'écran de démarrage est affiché avant que l'interface utilisateur principale ne soit construite et que le système de traduction ne soit chargé.

J'ai résolu ce problème dans au moins une de mes versions qui autorisait les modifications d'exécution dans la langue de l'interface utilisateur sans redémarrer Mudlet en : écrivant les chaînes traduites sous forme de QStringList dans un fichier du répertoire de configuration de Mudlet ( splashScreenTexts.dat IIRC) chaque fois que la langue a été modifiée.

IIRC I a également inclus une première entrée étant un décompte du nombre de lignes pour éviter des problèmes désagréables si le nombre de textes différents changeait dans les versions ultérieures de Mudlet de sorte qu'il y avait moins de lignes dans la variable que le code prévu !)

Au démarrage, Mudlet chargerait le texte par défaut ( en_US ) dans un QStringList , puis essaierait de charger ce fichier et s'il était présent, il l'utiliserait pour écraser le contenu de cette variable avant cette date. en utilisant ce qui a ensuite été stocké pour générer les messages ...

La fenêtre contextuelle de connexion affichera le bouton "Annuler" qui reste en anglais et n'est pas encore disponible pour la traduction.

C'est parce que les boutons de dialogue standard sont fournis par la bibliothèque Qt et le hack réalisé par Vadim pour simplifier mon code de modification de l'interface utilisateur d'exécution n'a pas tout à fait réussi.

Mon ancien code, IIRC, permettrait de modifier la source des fichiers de traduction - de sorte que l'on puisse passer d'un ensemble compilé dans une ressource à un ensemble externe dans le système de fichiers - qui pourrait être modifié à la volée puis rechargé ; cela signifiait qu'il devait vérifier quels fichiers de traduction étaient disponibles - en essayant de les charger sans les utiliser - chaque fois que la classe dlgProfilePreferences était utilisée et que la source des fichiers de traduction était modifiée. Ce code a été refondus d'utiliser une fonction lambda définie dans (void) mudlet::loadTranslators() mais il était seulement de faire les fichiers Mudlet - il n'a pas été chargé les Qt et le code actuel qui tente d'appeler la fonction maintenant anonyme à faire est tout simplement bourré... :stuck_out_tongue_closed_eyes :)

:bulb: J'ai du code caché d'un côté qui réglera cet aspect de l'éditeur... :grinning:

Fermer un profil sans sauvegarde automatique - "Voulez-vous sauvegarder ce profil" sera traduit, mais pas les options de réponse : "Oui", "Non", "Peut-être" ah je veux dire "Annuler"

image
Titres des colonnes dans le volet de recherche de la fenêtre de l'éditeur.

edit : dlgTriggerEditor.cpp répertorie ces textes ici : https://github.com/Mudlet/Mudlet/blob/4dfafa21ca97875946d5335d8ee1e9f6141b4c39/src/dlgTriggerEditor.cpp#L602

image
Fenêtre de dialogue Exportateur de package (expérimental)

image
Fenêtre de création de profil

Il suffit de mettre à jour les chaînes Crowdin pour les rendre disponibles !

Rétrospectivement, nous aurions dû les mettre à jour dès que le développement a été fusionné.

Je crois que tout cela est mis à jour maintenant, non?

Je crois que tout cela est mis à jour maintenant, non?

Je ne suis pas sûr de _all_, je ne les ai pas vérifiés depuis un moment. Pour certains, je ne sais même pas d'où ils viennent. SlySven a même mentionné certains boutons de dialogue standard qui n'ont pas du tout été traduits.

Je les ai donc tous examinés et vérifiés, et la seule chose à régler ici est l'écran de démarrage.
SlySven a mentionné ci-dessus comment cela est un peu plus difficile à résoudre, car la fonction tr() n'est pas encore disponible pendant cette période.
https://github.com/Mudlet/Mudlet/issues/1964#issuecomment -443542921
Cependant, cela devrait être faisable. Je pense que je l'ai déjà vu faire quelque part. Je ne sais pas spontanément comment la fonction est appelée à ce moment-là.

Et si vous supprimiez simplement le texte de l'écran de démarrage ?

Pour la plupart des machines, la lecture commence trop vite et les informations y sont à peine utiles ou essentielles.

Très bien, je ferme ça alors.

Cette page vous a été utile?
0 / 5 - 0 notes