diff --git a/README.md b/README.md index 21091713..4e265872 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ One-Click to deploy well-designed ChatGPT web UI on Vercel. - 预制角色功能(面具),方便地创建、分享和调试你的个性化对话 - 海量的内置 prompt 列表,来自[中文](https://github.com/PlexPt/awesome-chatgpt-prompts-zh)和[英文](https://github.com/f/awesome-chatgpt-prompts) - 自动压缩上下文聊天记录,在节省 Token 的同时支持超长对话 -- 多国语言支持:English, 简体中文, 繁体中文, 日本語, Français, Español, Italiano, Türkçe, Deutsch, Tiếng Việt, Русский, Čeština +- 多国语言支持:English, 简体中文, 繁体中文, 日本語, Español, Italiano, Türkçe, Deutsch, Tiếng Việt, Русский, Čeština - 拥有自己的域名?好上加好,绑定后即可在任何地方**无障碍**快速访问 ## 开发计划 diff --git a/app/locales/cn.ts b/app/locales/cn.ts index 032df3ab..fe32a907 100644 --- a/app/locales/cn.ts +++ b/app/locales/cn.ts @@ -73,7 +73,6 @@ const cn = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/cs.ts b/app/locales/cs.ts index c0d3d284..1bf7a169 100644 --- a/app/locales/cs.ts +++ b/app/locales/cs.ts @@ -75,7 +75,6 @@ const cs: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/de.ts b/app/locales/de.ts index fe19f0bc..a67f8bed 100644 --- a/app/locales/de.ts +++ b/app/locales/de.ts @@ -76,7 +76,6 @@ const de: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/en.ts b/app/locales/en.ts index 71d1d11b..be8bddea 100644 --- a/app/locales/en.ts +++ b/app/locales/en.ts @@ -75,7 +75,6 @@ const en: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/es.ts b/app/locales/es.ts index cdc37130..aef6e675 100644 --- a/app/locales/es.ts +++ b/app/locales/es.ts @@ -75,7 +75,6 @@ const es: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/fr.ts b/app/locales/fr.ts deleted file mode 100644 index 79795851..00000000 --- a/app/locales/fr.ts +++ /dev/null @@ -1,251 +0,0 @@ -import { SubmitKey } from "../store/config"; -import type { LocaleType } from "./index"; - -const fr: LocaleType = { - WIP: "Prochainement...", - Error: { - Unauthorized: - "Accès non autorisé, veuillez saisir le code d'accès dans la page des paramètres.", - }, - ChatItem: { - ChatItemCount: (count: number) => `${count} messages en total`, - }, - Chat: { - SubTitle: (count: number) => `${count} messages échangés avec ChatGPT`, - Actions: { - ChatList: "Aller à la liste de discussion", - CompressedHistory: "Mémoire d'historique compressée Prompt", - Export: "Exporter tous les messages en tant que Markdown", - Copy: "Copier", - Stop: "Arrêter", - Retry: "Réessayer", - Delete: "Supprimer", - }, - Rename: "Renommer la conversation", - Typing: "En train d'écrire…", - Input: (submitKey: string) => { - var inputHints = `Appuyez sur ${submitKey} pour envoyer`; - if (submitKey === String(SubmitKey.Enter)) { - inputHints += ", Shift + Enter pour insérer un saut de ligne"; - } - return inputHints + ", / pour rechercher des prompts"; - }, - Send: "Envoyer", - Config: { - Reset: "Restaurer les paramètres par défaut", - SaveAs: "Enregistrer en tant que masque", - }, - }, - Export: { - Title: "Tous les messages", - Copy: "Tout sélectionner", - Download: "Télécharger", - MessageFromYou: "Message de votre part", - MessageFromChatGPT: "Message de ChatGPT", - }, - Memory: { - Title: "Prompt mémoire", - EmptyContent: "Rien encore.", - Send: "Envoyer la mémoire", - Copy: "Copier la mémoire", - Reset: "Réinitialiser la session", - ResetConfirm: - "La réinitialisation supprimera l'historique de la conversation actuelle ainsi que la mémoire de l'historique. Êtes-vous sûr de vouloir procéder à la réinitialisation?", - }, - Home: { - NewChat: "Nouvelle discussion", - DeleteChat: "Confirmer la suppression de la conversation sélectionnée ?", - DeleteToast: "Conversation supprimée", - Revert: "Revenir en arrière", - }, - Settings: { - Title: "Paramètres", - SubTitle: "Toutes les configurations", - Actions: { - ClearAll: "Effacer toutes les données", - ResetAll: "Réinitialiser les configurations", - Close: "Fermer", - ConfirmResetAll: - "Êtes-vous sûr de vouloir réinitialiser toutes les configurations?", - ConfirmClearAll: "Êtes-vous sûr de vouloir supprimer toutes les données?", - }, - Lang: { - Name: "Language", // ATTENTION : si vous souhaitez ajouter une nouvelle traduction, ne traduisez pas cette valeur, laissez-la sous forme de `Language` - All: "Toutes les langues", - Options: { - cn: "简体中文", - en: "English", - tw: "繁體中文", - fr: "Français", - es: "Español", - it: "Italiano", - tr: "Türkçe", - jp: "日本語", - de: "Deutsch", - vi: "Vietnamese", - ru: "Русский", - cs: "Čeština", - }, - }, - - Avatar: "Avatar", - FontSize: { - Title: "Taille des polices", - SubTitle: "Ajuste la taille de police du contenu de la conversation", - }, - Update: { - Version: (x: string) => `Version : ${x}`, - IsLatest: "Dernière version", - CheckUpdate: "Vérifier la mise à jour", - IsChecking: "Vérification de la mise à jour...", - FoundUpdate: (x: string) => `Nouvelle version disponible : ${x}`, - GoToUpdate: "Mise à jour", - }, - SendKey: "Clé d'envoi", - Theme: "Thème", - TightBorder: "Bordure serrée", - SendPreviewBubble: { - Title: "Aperçu de l'envoi dans une bulle", - SubTitle: "Aperçu du Markdown dans une bulle", - }, - Mask: { - Title: "Écran de masque", - SubTitle: - "Afficher un écran de masque avant de démarrer une nouvelle discussion", - }, - Prompt: { - Disable: { - Title: "Désactiver la saisie semi-automatique", - SubTitle: "Appuyez sur / pour activer la saisie semi-automatique", - }, - List: "Liste de prompts", - ListCount: (builtin: number, custom: number) => - `${builtin} intégré, ${custom} personnalisé`, - Edit: "Modifier", - Modal: { - Title: "Liste de prompts", - Add: "Ajouter un élément", - Search: "Rechercher des prompts", - }, - EditModal: { - Title: "Modifier le prompt", - }, - }, - HistoryCount: { - Title: "Nombre de messages joints", - SubTitle: "Nombre de messages envoyés attachés par demande", - }, - CompressThreshold: { - Title: "Seuil de compression de l'historique", - SubTitle: - "Comprimera si la longueur des messages non compressés dépasse cette valeur", - }, - Token: { - Title: "Clé API", - SubTitle: "Utilisez votre clé pour ignorer la limite du code d'accès", - Placeholder: "Clé OpenAI API", - }, - Usage: { - Title: "Solde du compte", - SubTitle(used: any, total: any) { - return `Épuisé ce mois-ci $${used}, abonnement $${total}`; - }, - IsChecking: "Vérification...", - Check: "Vérifier", - NoAccess: "Entrez la clé API pour vérifier le solde", - }, - AccessCode: { - Title: "Code d'accès", - SubTitle: "Contrôle d'accès activé", - Placeholder: "Code d'accès requis", - }, - Model: "Modèle", - Temperature: { - Title: "Température", - SubTitle: "Une valeur plus élevée rendra les réponses plus aléatoires", - }, - MaxTokens: { - Title: "Max Tokens", - SubTitle: "Longueur maximale des tokens d'entrée et des tokens générés", - }, - PresencePenlty: { - Title: "Pénalité de présence", - SubTitle: - "Une valeur plus élevée augmentera la probabilité d'introduire de nouveaux sujets", - }, - }, - Store: { - DefaultTopic: "Nouvelle conversation", - BotHello: "Bonjour ! Comment puis-je vous aider aujourd'hui ?", - Error: "Quelque chose s'est mal passé, veuillez réessayer plus tard.", - Prompt: { - History: (content: string) => - "Ceci est un résumé de l'historique des discussions entre l'IA et l'utilisateur : " + - content, - Topic: - "Veuillez générer un titre de quatre à cinq mots résumant notre conversation sans introduction, ponctuation, guillemets, points, symboles ou texte supplémentaire. Supprimez les guillemets inclus.", - Summarize: - "Résumez brièvement nos discussions en 200 mots ou moins pour les utiliser comme prompt de contexte futur.", - }, - }, - Copy: { - Success: "Copié dans le presse-papiers", - Failed: - "La copie a échoué, veuillez accorder l'autorisation d'accès au presse-papiers", - }, - Context: { - Toast: (x: any) => `Avec ${x} contextes de prompts`, - Edit: "Contextes et mémoires de prompts", - Add: "Ajouter un prompt", - }, - Plugin: { - Name: "Extension", - }, - Mask: { - Name: "Masque", - Page: { - Title: "Modèle de prompt", - SubTitle: (count: number) => `${count} modèles de prompts`, - Search: "Rechercher des modèles", - Create: "Créer", - }, - Item: { - Info: (count: number) => `${count} prompts`, - Chat: "Discussion", - View: "Vue", - Edit: "Modifier", - Delete: "Supprimer", - DeleteConfirm: "Confirmer la suppression?", - }, - EditModal: { - Title: (readonly: boolean) => - `Modifier le modèle de prompt ${readonly ? "(en lecture seule)" : ""}`, - Download: "Télécharger", - Clone: "Dupliquer", - }, - Config: { - Avatar: "Avatar du bot", - Name: "Nom du bot", - }, - }, - NewChat: { - Return: "Retour", - Skip: "Passer", - Title: "Choisir un masque", - SubTitle: "Discutez avec l'âme derrière le masque", - More: "En savoir plus", - NotShow: "Ne pas afficher à nouveau", - ConfirmNoShow: - "Confirmez-vous vouloir désactiver cela? Vous pouvez le réactiver plus tard dans les paramètres.", - }, - - UI: { - Confirm: "Confirmer", - Cancel: "Annuler", - Close: "Fermer", - Create: "Créer", - Edit: "Éditer", - }, -}; - -export default fr; diff --git a/app/locales/index.ts b/app/locales/index.ts index ac90f770..e41dfcdf 100644 --- a/app/locales/index.ts +++ b/app/locales/index.ts @@ -1,7 +1,6 @@ import CN from "./cn"; import EN from "./en"; import TW from "./tw"; -import FR from "./fr"; import ES from "./es"; import IT from "./it"; import TR from "./tr"; @@ -17,7 +16,6 @@ export const AllLangs = [ "en", "cn", "tw", - "fr", "es", "it", "tr", @@ -82,7 +80,6 @@ export default { en: EN, cn: CN, tw: TW, - fr: FR, es: ES, it: IT, tr: TR, diff --git a/app/locales/it.ts b/app/locales/it.ts index f3791d91..541030ec 100644 --- a/app/locales/it.ts +++ b/app/locales/it.ts @@ -75,7 +75,6 @@ const it: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/jp.ts b/app/locales/jp.ts index 300a4140..39fc466e 100644 --- a/app/locales/jp.ts +++ b/app/locales/jp.ts @@ -75,7 +75,6 @@ const jp: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/ru.ts b/app/locales/ru.ts index 4bce2fbf..1ee0ec5c 100644 --- a/app/locales/ru.ts +++ b/app/locales/ru.ts @@ -75,7 +75,6 @@ const ru: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/tr.ts b/app/locales/tr.ts index 0c156265..9ba31ada 100644 --- a/app/locales/tr.ts +++ b/app/locales/tr.ts @@ -75,7 +75,6 @@ const tr: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/tw.ts b/app/locales/tw.ts index f42431f2..2c2ca55b 100644 --- a/app/locales/tw.ts +++ b/app/locales/tw.ts @@ -73,7 +73,6 @@ const tw: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe", diff --git a/app/locales/vi.ts b/app/locales/vi.ts index 2f528a72..c0da3d94 100644 --- a/app/locales/vi.ts +++ b/app/locales/vi.ts @@ -75,7 +75,6 @@ const vi: LocaleType = { cn: "简体中文", en: "English", tw: "繁體中文", - fr: "Français", es: "Español", it: "Italiano", tr: "Türkçe",