Remplacer globalement les traductions

:information_source: Résumé Ce plugin vous permet de remplacer globalement certains mots dans la traduction
:hammer_and_wrench: Lien du dépôt \u003chttps://github.com/Lhcfl/replace-translations-global\u003e
:open_book: Guide d’installation Comment installer des plugins dans Discourse

Fonctionnalités

Littéralement, remplacer toutes les occurrences d’un mot par un autre mot

Par exemple, remplacer « Topic » par « Nya » :

Configuration

Je pense que ses paramètres s’expliquent d’eux-mêmes :slightly_smiling_face:

Notez que les traductions sont mises en cache et leur modification prend du temps. Vous pouvez faire ceci pour forcer la mise à jour :

sudo ./launcher enter app
rm -rf tmp
14 « J'aime »

Est-ce que cela peut remplacer le texte personnalisé officiel ?

C’est le problème que je rencontre actuellement, je ne peux pas modifier ces paires clé-valeur en masse !

Ou alors @Lhc_fl, avez-vous une meilleure méthode ?

Ce plugin sert à remplacer les traductions en masse. Cependant, en raison de la mise en cache, vous devrez peut-être reconstruire après le remplacement pour qu’il prenne effet.

Je veux dire qu’il n’y a pas de méthode de modification en masse fournie par Discourse officiel ?
Par exemple, exporter un fichier yaml, puis le remplacer via VS Code ?

Il n’existe pas une telle méthode, il faut les modifier une par une.

Vos outils sont vraiment excellents !

Chaque modification nécessite une reconstruction de l’application avec ./launcher rebuild app.
Faut-il reconstruire manuellement ?
sudo ./launcher enter app
rm -rf tmp
Je n’ai pas trouvé d’effet.

Essayez d’abord (après avoir supprimé tmp) ./launcher restart app ?

Je l’ai supprimé dans l’environnement de développement, peut-être que cela s’est appliqué automatiquement ici.

Si cela ne fonctionne pas, reconstruisez. Les fichiers de langue sont peut-être précompilés, ce plugin fonctionne en intervenant sur la fonction de lecture du fichier yml de langue, il ne s’exécute qu’une seule fois lors du premier chargement.

1 « J'aime »

Juste un rappel qu’inclure une traduction en anglais permet aux autres de suivre beaucoup plus facilement, :pray:

4 « J'aime »

Je viens d’essayer, ça fait oops, autant reconstruire, c’est plus stable.

Si vous utilisez ceci pour remplacer un autre terme pour category, sachez que ce plugin remplace également le mot dans les modèles tels que {category}, entraînant des erreurs dans l’interface utilisateur. Pour éviter cela, j’utilise l’expression régulière
en:(?\u003c!\\{)category(?!\\})=\u003echapter
dans les paramètres du plugin, mais peut-être que le plugin devrait être ajusté pour cibler uniquement le contenu visible par l’utilisateur.

3 « J'aime »

@Lhc_fl avez-vous des projets à ce sujet ? Votre plugin semble être ce dont j’ai besoin pour corriger une partie de la terminologie pour ma communauté en français, mais je crains de casser des choses comme décrit dans le message ci-dessus par tomtjes.

Pourquoi le remplacement n’a-t-il pas réussi

(Il s’agit du plugin Globally replace translations)

Il se peut que vous deviez utiliser => à la place, comme dans les signes = et > ? La flèche sur votre capture d’écran ne semble pas correcte.

L’utilisation des symboles ne pose vraiment aucun problème : il s’agit des symboles = et > séparés. C’est simplement un problème d’affichage qui donne l’impression qu’ils sont collés ensemble.

1 « J'aime »

Compris, en tout cas, cela devrait être déplacé vers le sujet de ce plugin, car ce n’est pas #officiel.

D’accord, compris, merci pour l’information. (Pourquoi faut-il atteindre 20 caractères pour pouvoir répondre ?)

Si je comprends bien le code, le plugin utilise JsLocaleHelper pour remplacer le texte affiché dans l’interface utilisateur (le contenu de client.*.yml). Les fichiers server.*.yml, qui contiennent par exemple les descriptions des paramètres du site, restent inchangés.

« azy videos » est-il simplement un exemple de ce que vous souhaitez faire avec ce plugin ? Le plugin a été conçu pour remplacer un terme spécifique dans un grand nombre de textes. Comme ce texte n’apparaît qu’une seule fois sur le forum, vous pouvez simplement le modifier directement sans utiliser le plugin. Un guide explique comment procéder : Customize text in Discourse

2 « J'aime »

Je souhaite modifier ces textes en anglais, mais je n’arrive pas à les trouver.


1 « J'aime »

Ce sont les noms des paramètres. J’ai expliqué pourquoi ils ne sont pas traduisibles sur 有没有比较好的中文插件 - #2 by Moin.
Vous ne pouvez pas personnaliser les textes qui ne sont pas traduisibles dans l’interface d’administration.

D’ailleurs, même si j’avais omis quelque chose concernant la capacité de ce plugin à modifier également le texte du backend, je suis toujours convaincu qu’il ne modifie que les textes traduisibles, et non les autres textes de l’interface. Il s’agit de remplacer des mots dans les textes, et non de permettre la traduction de textes non traduisibles.

2 « J'aime »