forked from XiaoMo/ChatGPT-Next-Web
Merge pull request #1559 from Yidadaa/revert-1435-update
Revert "feat: close #1433 add french translation"
This commit is contained in:
commit
28e447ea4a
@ -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)
|
- 海量的内置 prompt 列表,来自[中文](https://github.com/PlexPt/awesome-chatgpt-prompts-zh)和[英文](https://github.com/f/awesome-chatgpt-prompts)
|
||||||
- 自动压缩上下文聊天记录,在节省 Token 的同时支持超长对话
|
- 自动压缩上下文聊天记录,在节省 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
|
||||||
- 拥有自己的域名?好上加好,绑定后即可在任何地方**无障碍**快速访问
|
- 拥有自己的域名?好上加好,绑定后即可在任何地方**无障碍**快速访问
|
||||||
|
|
||||||
## 开发计划
|
## 开发计划
|
||||||
|
@ -73,7 +73,6 @@ const cn = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -75,7 +75,6 @@ const cs: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -76,7 +76,6 @@ const de: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -75,7 +75,6 @@ const en: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -75,7 +75,6 @@ const es: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -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;
|
|
@ -1,7 +1,6 @@
|
|||||||
import CN from "./cn";
|
import CN from "./cn";
|
||||||
import EN from "./en";
|
import EN from "./en";
|
||||||
import TW from "./tw";
|
import TW from "./tw";
|
||||||
import FR from "./fr";
|
|
||||||
import ES from "./es";
|
import ES from "./es";
|
||||||
import IT from "./it";
|
import IT from "./it";
|
||||||
import TR from "./tr";
|
import TR from "./tr";
|
||||||
@ -17,7 +16,6 @@ export const AllLangs = [
|
|||||||
"en",
|
"en",
|
||||||
"cn",
|
"cn",
|
||||||
"tw",
|
"tw",
|
||||||
"fr",
|
|
||||||
"es",
|
"es",
|
||||||
"it",
|
"it",
|
||||||
"tr",
|
"tr",
|
||||||
@ -82,7 +80,6 @@ export default {
|
|||||||
en: EN,
|
en: EN,
|
||||||
cn: CN,
|
cn: CN,
|
||||||
tw: TW,
|
tw: TW,
|
||||||
fr: FR,
|
|
||||||
es: ES,
|
es: ES,
|
||||||
it: IT,
|
it: IT,
|
||||||
tr: TR,
|
tr: TR,
|
||||||
|
@ -75,7 +75,6 @@ const it: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -75,7 +75,6 @@ const jp: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -75,7 +75,6 @@ const ru: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -75,7 +75,6 @@ const tr: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -73,7 +73,6 @@ const tw: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
@ -75,7 +75,6 @@ const vi: LocaleType = {
|
|||||||
cn: "简体中文",
|
cn: "简体中文",
|
||||||
en: "English",
|
en: "English",
|
||||||
tw: "繁體中文",
|
tw: "繁體中文",
|
||||||
fr: "Français",
|
|
||||||
es: "Español",
|
es: "Español",
|
||||||
it: "Italiano",
|
it: "Italiano",
|
||||||
tr: "Türkçe",
|
tr: "Türkçe",
|
||||||
|
Loading…
Reference in New Issue
Block a user