Fix the typed AI chat translations

The quick commands "Reset to globe view" and "Show earthquakes" reached t()
through a .map(), so the catalog check never saw them and every language
showed them in English. They are now marked with msg() and translated.

Review of the 71 strings from #1507 in all eleven languages:
- zh-Hant is regenerated from zh-CN with OpenCC s2tw, as its guide says;
  40 entries had Taiwan vocabulary instead.
- ar "Dock to the right" names the left side, where RTL puts that rail.
- ja "What am I looking at?" no longer asks what the assistant sees.
- Provider Settings, dock, provider, live and map use each glossary's terms.
- de drops the du-form; ja drops spaces between Japanese and Latin text.
- Calques, register and the example commands read naturally.
This commit is contained in:
German Khokhlov committed 2026-11-04 17:53:23 +04:00
1 parent 4859ba4c94
commit e66b99c8ff
13 files changed
+272 -249

No files matched your search

+28 -26
View File
@@ -3096,41 +3096,43 @@
"Ski Pistes": "Pistes de ski",
"Fly to Tokyo": "Aller à Tokyo",
"Show live flights": "Afficher les vols en direct",
"Reset to globe view": "Revenir à la vue du globe",
"Show earthquakes": "Afficher les séismes",
"AI chat": "Discussion IA",
"GEV CHAT": "DISCUSSION GEV",
"Ask about the map. Tell it where to go.": "Posez une question sur la carte. Dites-lui où aller.",
"Close chat": "Fermer la discussion",
"Conversation": "Conversation",
"Explore with a question": "Explorer avec une question",
"Explore with a question": "Explorez en posant une question",
"Find a place, explore live data, or change your view.": "Trouvez un lieu, explorez des données en direct ou changez de vue.",
"Attachments": "Pièces jointes",
"Remove attachment": "Retirer la pièce jointe",
"Attach a map layer": "Joindre une couche de carte",
"Attach a map layer": "Joindre une couche de la carte",
"Choose a layer…": "Choisir une couche…",
"Attach a file": "Joindre un fichier",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB in total. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON ou GeoJSON · 10 Ko max. au total. Les pièces jointes sont envoyées à votre fournisseur d’IA avec votre message.",
"Latest AI response": "Dernière réponse de l’IA",
"Expand conversation": "Agrandir la conversation",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB in total. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON ou GeoJSON · 10 Ko max. au total. Les pièces jointes sont envoyées à votre fournisseur d'IA avec votre message.",
"Latest AI response": "Dernière réponse de l'IA",
"Expand conversation": "Développer la conversation",
"Command suggestions": "Suggestions de commandes",
"Expand chat": "Agrandir la discussion",
"Expand chat": "Développer la discussion",
"Add attachment": "Ajouter une pièce jointe",
"Message GEV": "Message à GEV",
"Ask GEV anything about the map…": "Demandez à GEV ce que vous voulez sur la carte…",
"Ask GEV anything about the map…": "Posez à GEV toutes vos questions sur la carte…",
"Stop reply": "Arrêter la réponse",
"Send message": "Envoyer le message",
"Panel position": "Position du panneau",
"Move above the dock": "Placer au-dessus du dock",
"Dock to the right": "Ancrer à droite",
"Expand panel": "Agrandir le panneau",
"Expand panel": "Développer le panneau",
"Minimize panel": "Réduire le panneau",
"You can attach up to four items.": "Vous pouvez joindre jusqu’à quatre éléments.",
"Attachments are too large together. Use smaller files.": "Les pièces jointes sont trop volumineuses ensemble. Utilisez des fichiers plus petits.",
"You can attach up to four items.": "Vous pouvez joindre jusqu'à quatre éléments.",
"Attachments are too large together. Use smaller files.": "La taille totale des pièces jointes est trop importante. Utilisez des fichiers plus petits.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Choisissez un fichier TXT, Markdown, CSV, JSON ou GeoJSON.",
"Each file must be 10 KB or smaller.": "Chaque fichier doit faire 10 Ko ou moins.",
"Choose a non-empty UTF-8 text file.": "Choisissez un fichier texte UTF-8 non vide.",
"Connecting…": "Connexion…",
"Thinking…": "Réflexion…",
"Working on the map…": "Travail sur la carte…",
"Working on the map…": "Mise à jour de la carte…",
"Silent chat · microphone off": "Discussion silencieuse · micro coupé",
"Reply interrupted. You can try again.": "Réponse interrompue. Vous pouvez réessayer.",
"Could not connect. Try again.": "Connexion impossible. Réessayez.",
@@ -3139,30 +3141,30 @@
"Chat closed.": "Discussion fermée.",
"Connection stopped.": "Connexion arrêtée.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "Le message et les pièces jointes sont trop volumineux. Retirez une pièce jointe ou raccourcissez votre message.",
"Message was not sent. Try again.": "Le message n’a pas été envoyé. Réessayez.",
"Message was not sent. Try again.": "Le message n'a pas été envoyé. Réessayez.",
"Reply stopped.": "Réponse arrêtée.",
"Suggestions": "Suggestions",
"Recent": "Récents",
"Quick commands": "Commandes rapides",
"Open AI chat": "Ouvrir la discussion IA",
"CHAT": "DISCUSSION",
"CHAT": "CHAT",
"Back to chat": "Retour à la discussion",
"Back to voice": "Retour à la voix",
"Back to voice": "Retour au mode vocal",
"Latest voice exchange": "Dernier échange vocal",
"Try saying": "Essayez de dire",
"What am I looking at?": "Qu’est-ce que je regarde ?",
"AI Provider": "Fournisseur d’IA",
"The selected AI provider is shared by voice and chat.": "Le fournisseur d’IA choisi est partagé par la voix et la discussion.",
"What am I looking at?": "Qu'est-ce que je regarde ?",
"AI Provider": "Fournisseur d'IA",
"The selected AI provider is shared by voice and chat.": "Le fournisseur d'IA choisi est commun à la voix et à la discussion.",
"Show quick commands": "Afficher les commandes rapides",
"Chat replies are silent. No microphone access is needed.": "Les réponses de la discussion sont silencieuses. Aucun accès au micro n’est nécessaire.",
"Chat replies are silent. No microphone access is needed.": "Les réponses de la discussion sont silencieuses. Aucun accès au microphone n'est nécessaire.",
"Chat": "Discussion",
"Attach layer": "Joindre la couche",
"Typed chat uses your OpenAI API key. ChatGPT sign-in covers voice only.": "Le chat écrit utilise votre clé d’API OpenAI. La connexion ChatGPT ne couvre que la voix.",
"Typed chat is unavailable while GEV_PREFER_CODEX_OAUTH requires ChatGPT OAuth.": "Le chat écrit est indisponible tant que GEV_PREFER_CODEX_OAUTH impose ChatGPT OAuth.",
"That request needed too many steps. Changes already made to the map stay in place.": "Cette demande a nécessité trop d’étapes. Les modifications déjà apportées à la carte sont conservées.",
"That request needed too many steps. Try a simpler request.": "Cette demande a nécessité trop d’étapes. Essayez une demande plus simple.",
"The provider rejected the API key. Check it in Provider Settings.": "Le fournisseur a refusé la clé d’API. Vérifiez-la dans les paramètres du fournisseur.",
"Too many chat requests. Try again in {seconds} s.": "Trop de requêtes de chat. Réessayez dans {seconds} s.",
"The provider refused access for this key. Check the key's project, region or permissions.": "Le fournisseur a refusé l’accès pour cette clé. Vérifiez le projet, la région ou les autorisations de la clé.",
"The provider account is out of credit. Check its billing, or choose another AI Provider in Settings.": "Le compte du fournisseur n’a plus de crédit. Vérifiez la facturation ou choisissez un autre fournisseur d’IA dans les paramètres."
"Typed chat uses your OpenAI API key. ChatGPT sign-in covers voice only.": "La discussion écrite utilise votre clé API OpenAI. La connexion ChatGPT ne couvre que la voix.",
"Typed chat is unavailable while GEV_PREFER_CODEX_OAUTH requires ChatGPT OAuth.": "La discussion écrite est indisponible tant que GEV_PREFER_CODEX_OAUTH impose l'OAuth ChatGPT.",
"That request needed too many steps. Changes already made to the map stay in place.": "Cette demande a nécessité trop d'étapes. Les modifications déjà apportées à la carte sont conservées.",
"That request needed too many steps. Try a simpler request.": "Cette demande a nécessité trop d'étapes. Essayez une demande plus simple.",
"The provider rejected the API key. Check it in Provider Settings.": "Le fournisseur a refusé la clé API. Vérifiez-la dans les paramètres des fournisseurs.",
"Too many chat requests. Try again in {seconds} s.": "Trop de requêtes de discussion. Réessayez dans {seconds} s.",
"The provider refused access for this key. Check the key's project, region or permissions.": "Le fournisseur a refusé l'accès pour cette clé. Vérifiez le projet, la région ou les autorisations de la clé.",
"The provider account is out of credit. Check its billing, or choose another AI Provider in Settings.": "Le compte du fournisseur n'a plus de crédit. Vérifiez la facturation ou choisissez un autre fournisseur d'IA dans les paramètres."
}