feat: Add German language support

This commit is contained in:
n4ze3m 2024-08-31 21:23:49 +05:30
parent 3f61c6afc2
commit 33702f0553
11 changed files with 598 additions and 1 deletions

View File

@ -0,0 +1,13 @@
{
"heading": "Chrome AI konfigurieren",
"status": {
"label": "Chrome AI-Unterstützung für Page Assist aktivieren oder deaktivieren"
},
"error": {
"browser_not_supported": "Diese Version von Chrome wird vom Gemini Nano-Modell nicht unterstützt. Bitte aktualisieren Sie auf Version 127 oder höher",
"ai_not_supported": "Die Einstellung chrome://flags/#prompt-api-for-gemini-nano ist nicht aktiviert. Bitte aktivieren Sie sie.",
"ai_not_ready": "Gemini Nano ist noch nicht bereit; Sie müssen die Chrome-Einstellungen überprüfen.",
"internal_error": "Ein interner Fehler ist aufgetreten. Bitte versuchen Sie es später erneut."
},
"errorDescription": "Um Chrome AI zu nutzen, benötigen Sie eine Browserversion höher als 127, die derzeit in den Dev- und Canary-Kanälen verfügbar ist. Nach dem Herunterladen der unterstützten Version folgen Sie diesen Schritten:\n\n1. Gehen Sie zu `chrome://flags/#prompt-api-for-gemini-nano` und wählen Sie \"Aktivieren\".\n2. Gehen Sie zu `chrome://flags/#optimization-guide-on-device-model` und wählen Sie \"EnabledBypassPrefRequirement\".\n3. Gehen Sie zu `chrome://components`, suchen Sie nach \"Optimization Guide On Device Model\" und klicken Sie auf \"Nach Update suchen\". Dies wird das Modell herunterladen. Wenn Sie die Einstellungen nicht sehen, wiederholen Sie die Schritte 1 und 2 und starten Sie Ihren Browser neu."
}

View File

@ -0,0 +1,100 @@
{
"pageAssist": "Page Assist",
"selectAModel": "Modell auswählen",
"save": "Speichern",
"saved": "Gespeichert",
"cancel": "Abbrechen",
"retry": "Erneut versuchen",
"share": {
"tooltip": {
"share": "Teilen"
},
"modal": {
"title": "Link zum Chat teilen"
},
"form": {
"defaultValue": {
"name": "Anonym",
"title": "Unbenannter Chat"
},
"title": {
"label": "Chat-Titel",
"placeholder": "Chat-Titel eingeben",
"required": "Chat-Titel ist erforderlich"
},
"name": {
"label": "Ihr Name",
"placeholder": "Geben Sie Ihren Namen ein",
"required": "Ihr Name ist erforderlich"
},
"btn": {
"save": "Link generieren",
"saving": "Link wird generiert..."
}
},
"notification": {
"successGenerate": "Link in die Zwischenablage kopiert",
"failGenerate": "Link konnte nicht generiert werden"
}
},
"copyToClipboard": "In die Zwischenablage kopieren",
"webSearch": "Web durchsuchen",
"regenerate": "Neu generieren",
"edit": "Bearbeiten",
"saveAndSubmit": "Speichern & Absenden",
"editMessage": {
"placeholder": "Nachricht eingeben..."
},
"submit": "Absenden",
"noData": "Keine Daten",
"noHistory": "Kein Chat-Verlauf",
"chatWithCurrentPage": "Mit aktueller Seite chatten",
"beta": "Beta",
"tts": "Vorlesen",
"currentChatModelSettings": "Aktuelle Chat-Modell-Einstellungen",
"modelSettings": {
"label": "Modell-Einstellungen",
"description": "Legen Sie die Modelloptionen global für alle Chats fest",
"form": {
"keepAlive": {
"label": "Aktiv halten",
"help": "Steuert, wie lange das Modell nach der Anfrage im Speicher geladen bleibt (Standard: 5m)",
"placeholder": "Geben Sie die Dauer für Aktiv halten ein (z.B. 5m, 10m, 1h)"
},
"temperature": {
"label": "Temperatur",
"placeholder": "Geben Sie den Temperaturwert ein (z.B. 0.7, 1.0)"
},
"numCtx": {
"label": "Anzahl der Kontexte",
"placeholder": "Geben Sie die Anzahl der Kontexte ein (Standard: 2048)"
},
"seed": {
"label": "Seed",
"placeholder": "Geben Sie den Seed-Wert ein (z.B. 1234)",
"help": "Reproduzierbarkeit der Modellausgabe"
},
"topK": {
"label": "Top K",
"placeholder": "Geben Sie den Top-K-Wert ein (z.B. 40, 100)"
},
"topP": {
"label": "Top P",
"placeholder": "Geben Sie den Top-P-Wert ein (z.B. 0.9, 0.95)"
},
"numGpu": {
"label": "Anzahl GPUs",
"placeholder": "Geben Sie die Anzahl der Ebenen ein, die an GPU(s) gesendet werden sollen"
}
},
"advanced": "Weitere Modell-Einstellungen"
},
"copilot": {
"summary": "Zusammenfassen",
"explain": "Erklären",
"rephrase": "Umformulieren",
"translate": "Übersetzen",
"custom": "Benutzerdefiniert"
},
"citations": "Zitate"
}

View File

@ -0,0 +1,43 @@
{
"addBtn": "Neues Wissen hinzufügen",
"columns": {
"title": "Titel",
"status": "Status",
"embeddings": "Einbettungsmodell",
"createdAt": "Erstellt am",
"action": "Aktionen"
},
"expandedColumns": {
"name": "Name"
},
"tooltip": {
"delete": "Löschen"
},
"confirm": {
"delete": "Sind Sie sicher, dass Sie dieses Wissen löschen möchten?"
},
"deleteSuccess": "Wissen erfolgreich gelöscht",
"status": {
"pending": "Ausstehend",
"finished": "Abgeschlossen",
"processing": "In Bearbeitung",
"failed": "Fehlgeschlagen"
},
"addKnowledge": "Wissen hinzufügen",
"form": {
"title": {
"label": "Wissenstitel",
"placeholder": "Wissenstitel eingeben",
"required": "Wissenstitel ist erforderlich"
},
"uploadFile": {
"label": "Datei hochladen",
"uploadText": "Ziehen Sie eine Datei hierher oder klicken Sie zum Hochladen",
"uploadHint": "Unterstützte Dateitypen: .pdf, .csv, .txt, .md, .docx",
"required": "Datei ist erforderlich"
},
"submit": "Absenden",
"success": "Wissen erfolgreich hinzugefügt"
},
"noEmbeddingModel": "Bitte fügen Sie zuerst ein Einbettungsmodell von der RAG-Einstellungsseite hinzu"
}

View File

@ -0,0 +1,12 @@
{
"newChat": "Neuer Chat",
"selectAPrompt": "Wähle eine Eingabeaufforderung",
"githubRepository": "GitHub-Repository",
"settings": "Einstellungen",
"sidebarTitle": "Chat-Verlauf",
"error": "Fehler",
"somethingWentWrong": "Etwas ist schiefgelaufen",
"validationSelectModel": "Bitte wähle ein Modell aus, um fortzufahren",
"deleteHistoryConfirmation": "Bist du sicher, dass du diesen Verlauf löschen möchtest?",
"editHistoryTitle": "Gib einen neuen Titel ein"
}

View File

@ -0,0 +1,29 @@
{
"ollamaState": {
"searching": "Suche nach Ihrem Ollama 🦙",
"running": "Ollama läuft 🦙",
"notRunning": "Verbindung zu Ollama nicht möglich 🦙",
"connectionError": "Es scheint, dass Sie ein Verbindungsproblem haben. Bitte beachten Sie diese <anchor>Dokumentation</anchor> zur Fehlerbehebung."
},
"formError": {
"noModel": "Bitte wählen Sie ein Modell aus",
"noEmbeddingModel": "Bitte legen Sie ein Embedding-Modell auf der Seite Einstellungen > RAG fest"
},
"form": {
"textarea": {
"placeholder": "Nachricht eingeben..."
},
"webSearch": {
"on": "An",
"off": "Aus"
}
},
"tooltip": {
"searchInternet": "Internet durchsuchen",
"speechToText": "Sprache zu Text",
"uploadImage": "Bild hochladen",
"stopStreaming": "Streaming stoppen",
"knowledge": "Wissen"
},
"sendWhenEnter": "Senden bei Drücken der Eingabetaste"
}

View File

@ -0,0 +1,341 @@
{
"generalSettings": {
"title": "Allgemeine Einstellungen",
"settings": {
"heading": "Web-UI-Einstellungen",
"speechRecognitionLang": {
"label": "Spracherkennungssprache",
"placeholder": "Sprache auswählen"
},
"language": {
"label": "Sprache",
"placeholder": "Sprache auswählen"
},
"darkMode": {
"label": "Design ändern",
"options": {
"light": "Hell",
"dark": "Dunkel"
}
},
"copilotResumeLastChat": {
"label": "Letzten Chat beim Öffnen des Seitenpanels fortsetzen (Copilot)"
},
"hideCurrentChatModelSettings": {
"label": "Aktuelle Chat-Modell-Einstellungen ausblenden"
},
"restoreLastChatModel": {
"label": "Zuletzt verwendetes Modell für vorherige Chats wiederherstellen"
},
"sendNotificationAfterIndexing": {
"label": "Benachrichtigung nach Abschluss der Wissensbasis-Verarbeitung senden"
},
"generateTitle" :{
"label": "Titel mit KI generieren"
}
},
"sidepanelRag": {
"heading": "Copilot Chat mit Website-Einstellungen",
"ragEnabled": {
"label": "Chat mit Website unter Verwendung von Vektor-Embeddings"
},
"maxWebsiteContext": {
"label": "Normaler Modus Website-Inhaltsgröße",
"placeholder": "Inhaltsgröße (Standard 4028)"
}
},
"webSearch": {
"heading": "Websuche verwalten",
"searchMode": {
"label": "Einfache Internetsuche durchführen"
},
"provider": {
"label": "Suchmaschine",
"placeholder": "Suchmaschine auswählen"
},
"totalSearchResults": {
"label": "Gesamtanzahl der Suchergebnisse",
"placeholder": "Gesamtanzahl der Suchergebnisse eingeben"
},
"visitSpecificWebsite": {
"label": "Die in der Nachricht erwähnte Website besuchen"
}
},
"system": {
"heading": "Systemeinstellungen",
"deleteChatHistory": {
"label": "Chatverlauf löschen",
"button": "Löschen",
"confirm": "Sind Sie sicher, dass Sie Ihren Chatverlauf löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden."
},
"export": {
"label": "Chatverlauf, Wissensbasis und Prompts exportieren",
"button": "Daten exportieren",
"success": "Export erfolgreich"
},
"import": {
"label": "Chatverlauf, Wissensbasis und Prompts importieren",
"button": "Daten importieren",
"success": "Import erfolgreich",
"error": "Importfehler"
}
},
"tts": {
"heading": "Text-zu-Sprache-Einstellungen",
"ttsEnabled": {
"label": "Text-zu-Sprache aktivieren"
},
"ttsProvider": {
"label": "Text-zu-Sprache-Anbieter",
"placeholder": "Anbieter auswählen"
},
"ttsVoice": {
"label": "Text-zu-Sprache-Stimme",
"placeholder": "Stimme auswählen"
},
"ssmlEnabled": {
"label": "SSML (Speech Synthesis Markup Language) aktivieren"
}
}
},
"manageModels": {
"title": "Modelle verwalten",
"addBtn": "Neues Modell hinzufügen",
"columns": {
"name": "Name",
"digest": "Digest",
"modifiedAt": "Zuletzt geändert",
"size": "Größe",
"actions": "Aktionen"
},
"expandedColumns": {
"parentModel": "Übergeordnetes Modell",
"format": "Format",
"family": "Familie",
"parameterSize": "Parametergröße",
"quantizationLevel": "Quantisierungsstufe"
},
"tooltip": {
"delete": "Modell löschen",
"repull": "Modell erneut herunterladen"
},
"confirm": {
"delete": "Sind Sie sicher, dass Sie dieses Modell löschen möchten?",
"repull": "Sind Sie sicher, dass Sie dieses Modell erneut herunterladen möchten?"
},
"modal": {
"title": "Neues Modell hinzufügen",
"placeholder": "Modellnamen eingeben",
"pull": "Modell herunterladen"
},
"notification": {
"pullModel": "Modell wird heruntergeladen",
"pullModelDescription": "Das Modell {{modelName}} wird heruntergeladen. Weitere Details finden Sie im Erweiterungssymbol.",
"success": "Erfolgreich",
"error": "Fehler",
"successDescription": "Das Modell wurde erfolgreich heruntergeladen",
"successDeleteDescription": "Das Modell wurde erfolgreich gelöscht",
"someError": "Etwas ist schiefgelaufen. Bitte versuchen Sie es später erneut"
}
},
"managePrompts": {
"title": "Prompts verwalten",
"addBtn": "Neuen Prompt hinzufügen",
"option1": "Normal",
"option2": "RAG",
"questionPrompt": "Frage-Prompt",
"segmented": {
"custom": "Benutzerdefinierte Prompts",
"copilot": "Copilot-Prompts"
},
"columns": {
"title": "Titel",
"prompt": "Prompt",
"type": "Prompt-Typ",
"actions": "Aktionen"
},
"systemPrompt": "System-Prompt",
"quickPrompt": "Schnell-Prompt",
"tooltip": {
"delete": "Prompt löschen",
"edit": "Prompt bearbeiten"
},
"confirm": {
"delete": "Sind Sie sicher, dass Sie diesen Prompt löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden."
},
"modal": {
"addTitle": "Neuen Prompt hinzufügen",
"editTitle": "Prompt bearbeiten"
},
"form": {
"title": {
"label": "Titel",
"placeholder": "Mein toller Prompt",
"required": "Bitte geben Sie einen Titel ein"
},
"prompt": {
"label": "Prompt",
"placeholder": "Prompt eingeben",
"required": "Bitte geben Sie einen Prompt ein",
"help": "Sie können {key} als Variable in Ihrem Prompt verwenden.",
"missingTextPlaceholder": "Die Variable {text} fehlt im Prompt. Bitte fügen Sie sie hinzu."
},
"isSystem": {
"label": "Ist System-Prompt"
},
"btnSave": {
"saving": "Prompt wird hinzugefügt...",
"save": "Prompt hinzufügen"
},
"btnEdit": {
"saving": "Prompt wird aktualisiert...",
"save": "Prompt aktualisieren"
}
},
"notification": {
"addSuccess": "Prompt hinzugefügt",
"addSuccessDesc": "Prompt wurde erfolgreich hinzugefügt",
"error": "Fehler",
"someError": "Etwas ist schiefgelaufen. Bitte versuchen Sie es später erneut",
"updatedSuccess": "Prompt aktualisiert",
"updatedSuccessDesc": "Prompt wurde erfolgreich aktualisiert",
"deletedSuccess": "Prompt gelöscht",
"deletedSuccessDesc": "Prompt wurde erfolgreich gelöscht"
}
},
"manageShare": {
"title": "Freigabe verwalten",
"heading": "Seiten-Freigabe-URL konfigurieren",
"form": {
"url": {
"label": "Seiten-Freigabe-URL",
"placeholder": "Seiten-Freigabe-URL eingeben",
"required": "Bitte geben Sie Ihre Seiten-Freigabe-URL ein!",
"help": "Aus Datenschutzgründen können Sie die Seitenfreigabe selbst hosten und die URL hier angeben. <anchor>Mehr erfahren</anchor>."
}
},
"webshare": {
"heading": "Web-Freigabe",
"columns": {
"title": "Titel",
"url": "URL",
"actions": "Aktionen"
},
"tooltip": {
"delete": "Freigabe löschen"
},
"confirm": {
"delete": "Sind Sie sicher, dass Sie diese Freigabe löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden."
},
"label": "Seitenfreigabe verwalten",
"description": "Seitenfreigabe-Funktion aktivieren oder deaktivieren"
},
"notification": {
"pageShareSuccess": "Seiten-Freigabe-URL erfolgreich aktualisiert",
"someError": "Etwas ist schiefgelaufen. Bitte versuchen Sie es später erneut",
"webShareDeleteSuccess": "Web-Freigabe erfolgreich gelöscht"
}
},
"ollamaSettings": {
"title": "Ollama-Einstellungen",
"heading": "Ollama konfigurieren",
"settings": {
"ollamaUrl": {
"label": "Ollama-URL",
"placeholder": "Ollama-URL eingeben"
},
"advanced": {
"label": "Erweiterte Ollama-URL-Konfiguration",
"urlRewriteEnabled": {
"label": "Benutzerdefinierte Ursprungs-URL aktivieren oder deaktivieren"
},
"rewriteUrl": {
"label": "Benutzerdefinierte Ursprungs-URL",
"placeholder": "Benutzerdefinierte Ursprungs-URL eingeben"
},
"headers": {
"label": "Benutzerdefinierte Header",
"add": "Header hinzufügen",
"key": {
"label": "Header-Schlüssel",
"placeholder": "Autorisierung"
},
"value": {
"label": "Header-Wert",
"placeholder": "Bearer-Token"
}
},
"help": "Wenn Sie Verbindungsprobleme mit Ollama auf Page Assist haben, können Sie eine benutzerdefinierte Ursprungs-URL konfigurieren. Um mehr über die Konfiguration zu erfahren, <anchor>klicken Sie hier</anchor>."
}
}
},
"manageSearch": {
"title": "Web-Suche verwalten",
"heading": "Web-Suche konfigurieren"
},
"about": {
"title": "Über",
"heading": "Über",
"chromeVersion": "Page Assist Version",
"ollamaVersion": "Ollama Version",
"support": "Sie können das Page Assist-Projekt durch Spenden oder Sponsoring über die folgenden Plattformen unterstützen:",
"koFi": "Unterstützen Sie uns auf Ko-fi",
"githubSponsor": "Sponsern Sie uns auf GitHub",
"githubRepo": "GitHub-Repository"
},
"manageKnowledge": {
"title": "Wissen verwalten",
"heading": "Wissensbasis konfigurieren"
},
"rag": {
"title": "RAG-Einstellungen",
"ragSettings": {
"label": "RAG-Einstellungen",
"model": {
"label": "Embedding-Modell",
"required": "Bitte wählen Sie ein Modell aus",
"help": "Es wird dringend empfohlen, Embedding-Modelle wie `nomic-embed-text` zu verwenden.",
"placeholder": "Wählen Sie ein Modell aus"
},
"chunkSize": {
"label": "Chunk-Größe",
"placeholder": "Chunk-Größe eingeben",
"required": "Bitte geben Sie eine Chunk-Größe ein"
},
"chunkOverlap": {
"label": "Chunk-Überlappung",
"placeholder": "Chunk-Überlappung eingeben",
"required": "Bitte geben Sie eine Chunk-Überlappung ein"
},
"totalFilePerKB": {
"label": "Standard-Datei-Upload-Limit für die Wissensbasis",
"placeholder": "Geben Sie das Standard-Datei-Upload-Limit ein (z.B. 10)",
"required": "Bitte geben Sie das Standard-Datei-Upload-Limit ein"
},
"noOfRetrievedDocs": {
"label": "Anzahl der abgerufenen Dokumente",
"placeholder": "Anzahl der abgerufenen Dokumente eingeben",
"required": "Bitte geben Sie die Anzahl der abgerufenen Dokumente ein"
}
},
"prompt": {
"label": "RAG-Prompt konfigurieren",
"option1": "Normal",
"option2": "Web",
"alert": "Die Konfiguration des System-Prompts hier ist veraltet. Bitte verwenden Sie den Abschnitt 'Prompts verwalten', um Prompts hinzuzufügen oder zu bearbeiten. Dieser Abschnitt wird in einer zukünftigen Version entfernt",
"systemPrompt": "System-Prompt",
"systemPromptPlaceholder": "System-Prompt eingeben",
"webSearchPrompt": "Web-Suche-Prompt",
"webSearchPromptHelp": "Entfernen Sie `{search_results}` nicht aus dem Prompt.",
"webSearchPromptError": "Bitte geben Sie einen Web-Suche-Prompt ein",
"webSearchPromptPlaceholder": "Web-Suche-Prompt eingeben",
"webSearchFollowUpPrompt": "Web-Suche-Folgeprompt",
"webSearchFollowUpPromptHelp": "Entfernen Sie `{chat_history}` und `{question}` nicht aus dem Prompt.",
"webSearchFollowUpPromptError": "Bitte geben Sie Ihren Web-Suche-Folgeprompt ein!",
"webSearchFollowUpPromptPlaceholder": "Ihr Web-Suche-Folgeprompt"
}
},
"chromeAiSettings": {
"title": "Chrome AI-Einstellungen"
}
}

View File

@ -0,0 +1,7 @@
{
"tooltip": {
"embed": "Es kann einige Minuten dauern, die Seite einzubetten. Bitte warten Sie...",
"clear": "Chatverlauf löschen",
"history": "Chatverlauf"
}
}

View File

@ -10,6 +10,7 @@ import { ja } from "./lang/ja";
import { it } from "./lang/it"; import { it } from "./lang/it";
import { es } from "./lang/es"; import { es } from "./lang/es";
import { fa } from "./lang/fa"; import { fa } from "./lang/fa";
import { de } from "./lang/de";
import LanguageDetector from 'i18next-browser-languagedetector'; import LanguageDetector from 'i18next-browser-languagedetector';
i18n i18n
@ -30,7 +31,8 @@ i18n
ja: ja, ja: ja,
"ja-JP": ja, "ja-JP": ja,
fa: fa, fa: fa,
"fa-IR": fa "fa-IR": fa,
de: de
}, },
fallbackLng: "en", fallbackLng: "en",
lng: localStorage.getItem("i18nextLng") || "en", lng: localStorage.getItem("i18nextLng") || "en",

17
src/i18n/lang/de.ts Normal file
View File

@ -0,0 +1,17 @@
import option from "@/assets/locale/de/option.json";
import playground from "@/assets/locale/de/playground.json";
import common from "@/assets/locale/de/common.json";
import sidepanel from "@/assets/locale/de/sidepanel.json";
import settings from "@/assets/locale/de/settings.json";
import knowledge from "@/assets/locale/de/knowledge.json";
import chrome from "@/assets/locale/de/chrome.json";
export const de = {
option,
playground,
common,
sidepanel,
settings,
knowledge,
chrome
}

View File

@ -39,5 +39,9 @@ export const supportLanguage = [
{ {
label: "فارسی", label: "فارسی",
value: "fa" value: "fa"
},
{
label: "Deutsch",
value: "de"
} }
] ]

View File

@ -0,0 +1,29 @@
{
"extName": {
"message": "Page Assist - Eine Web-Benutzeroberfläche für lokale KI-Modelle"
},
"extDescription": {
"message": "Nutzen Sie Ihre lokal laufenden KI-Modelle, um Sie beim Surfen im Web zu unterstützen."
},
"openSidePanelToChat": {
"message": "Copilot zum Chatten öffnen"
},
"openOptionToChat": {
"message": "Web-Benutzeroberfläche zum Chatten öffnen"
},
"contextSummarize": {
"message": "Zusammenfassen"
},
"contextExplain": {
"message": "Erklären"
},
"contextRephrase": {
"message": "Umformulieren"
},
"contextTranslate" :{
"message": "Übersetzen"
},
"contextCustom": {
"message": "Benutzerdefiniert"
}
}