# vue: Traduction de chaînes de caractères
URL: https://generaltranslation.com/fr/docs/vue/guides/translating-strings.mdx
---
title: Traduction de chaînes de caractères
description: Comment traduire les étiquettes, attributs et chaînes de caractères partagées dans Vue avec useGT et useMessages.
related:
links:
- /docs/vue/guides/translating-content
- /docs/vue/guides/developing-spa-translations
- /docs/vue/guides/formatting-variables
- /docs/vue/guides/configuring
---
Utilisez [`useGT()`](/docs/vue/reference/composables/use-gt) pour les chaînes de caractères qui ne peuvent pas être exprimées dans le contenu d’un modèle, comme les espaces réservés, les étiquettes accessibles et les valeurs transmises à un autre composant. Utilisez [`msg()`](/docs/vue/reference/functions/msg) avec [`useMessages()`](/docs/vue/reference/composables/use-messages) lorsqu’un message statique est déclaré dans un module et affiché dans un autre.
## Traduire avec `useGT` [#use-gt]
Appelez [`useGT()`](/docs/vue/reference/composables/use-gt) lors de l’initialisation du composant, puis appelez la fonction renvoyée dans le modèle :
```vue
```
Utilisez un littéral de chaîne pour que la CLI puisse l’extraire. Les entrées de catalogue manquantes renvoient la chaîne source.
La seule option prise en charge est un `$context` statique :
```vue
```
Les accolades sont interprétées comme du texte littéral. [`useGT()`](/docs/vue/reference/composables/use-gt) ne traite pas la syntaxe ICU, n’interpole pas les variables et n’accepte pas les options de chaîne React telles que `$id`, `$maxChars` et `$format`.
## Garder les résultats traduits réactifs [#reactivity]
La fonction renvoyée par [`useGT()`](/docs/vue/reference/composables/use-gt) lit le catalogue actif lorsqu’elle est appelée. Appelez-la dans un modèle, une valeur calculée ou un effet réactif si le résultat doit être mis à jour après un changement de paramètre régional ou de catalogue :
```vue
{{ pageTitle }}
```
`const pageTitle = gt('Account settings')` est traduit une seule fois lors de la configuration et stocke un instantané. Il ne s’exécute pas de nouveau lorsqu’un plugin [`createGT()`](/docs/vue/reference/functions/create-gt) change de paramètre régional.
## Enregistrer des messages partagés [#messages]
Utilisez [`msg()`](/docs/vue/reference/functions/msg) pour enregistrer des chaînes statiques dans un module partagé. Cette fonction marque le contenu pour l’extraction ; elle n’effectue aucune recherche de traduction.
```ts title="src/messages.ts"
import { msg } from 'gt-vue';
export const statusMessages = {
active: msg('Active', { $context: 'account status' }),
paused: msg('Paused', { $context: 'account status' }),
};
```
Résolvez le message sélectionné avec [`useMessages()`](/docs/vue/reference/composables/use-messages) à l’endroit où il est affiché :
```vue title="src/components/StatusBadge.vue"
{{ label }}
```
Sans options, [`msg()`](/docs/vue/reference/functions/msg) renvoie la chaîne source inchangée. Avec `$context`, elle ajoute des métadonnées opaques de recherche que [`useMessages()`](/docs/vue/reference/composables/use-messages) lit. N’analysez pas cette représentation encodée et ne présumez pas de son contenu.
## Traduire du contenu avec des valeurs d’exécution [#variables]
Les recherches de simples chaînes de caractères n’interpolent pas les données d’exécution. Placez la phrase complète dans [``](/docs/vue/reference/components/t) et marquez la valeur variable avec [``](/docs/vue/reference/components/var) :
```vue
Welcome back, {{ accountName }}!
```
Utilisez [``](/docs/vue/reference/components/num), [``](/docs/vue/reference/components/currency) et [``](/docs/vue/reference/components/datetime) lorsque la valeur doit également être formatée selon le paramètre régional.
Les SPA exécutées uniquement dans le navigateur qui nécessitent une recherche statique lors de l’évaluation des modules peuvent utiliser [`t()`](/docs/vue/reference/functions/t) après avoir attendu [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa). Consultez [Développer avec les traductions SPA](/docs/vue/guides/developing-spa-translations) pour respecter l’ordre d’importation requis.
## Next steps
- /docs/vue/guides/translating-content
- /docs/vue/guides/developing-spa-translations
- /docs/vue/guides/formatting-variables
- /docs/vue/guides/configuring