const strings = {
error: {
server_error: "Serverfehler, bitte versuchen Sie es erneut",
aiPromptTooLong: "AI-Eingabe ist zu lang (max. 4096 Zeichen)",
},
title: {
donate: "Spenden",
donateTitle: "Unterstützen Sie P3X Redis UI",
donateDescription: "P3X Redis UI ist ein kostenloses Open-Source-Projekt. Die Kosten für die Wartung der App, AI-Funktionen, Docker-Images, Server und Infrastruktur werden vom Entwickler aus eigener Tasche bezahlt. Wenn Sie dieses Tool nützlich finden, unterstützen Sie bitte seine Weiterentwicklung mit einer Spende. Jeder Beitrag hilft, das Projekt am Leben zu erhalten und wachsen zu lassen. Vielen Dank!",
jsonRecursive: "Alle Blätter aufklappen",
name: "P3X Redis UI",
nameDonated: "P3X Redis UI+",
main: "Sie können eine Redis-Verbindung aus dem unteren linken Menü auswählen.",
statistics: "Statistiken",
error: "Fehler",
connectingRedis: "Verbindung zu Redis wird hergestellt ...",
socketioConnectError: "Socket.IO Fehler",
db: "DB",
server: "Server",
clients: "Clients",
memory: "Speicher",
persistence: "Persistenz",
stats: "Statistiken",
replication: "Replikation",
cpu: "CPU",
cluster: "Cluster",
modules: "Module",
errorstats: "Fehlerstatistiken",
commandstats: "Befehlsstatistiken",
latencystats: "Latenzstatistiken",
keysizes: "Schlüsselgrößen",
threads: "Threads"
},
confirm: {
dropIndex: "Sind Sie sicher, dass Sie diesen Index löschen möchten?",
uploadBuffer: "Sind Sie sicher, dass Sie diese Binärdaten hochladen möchten?",
uploadBufferDone: "Die Binärdaten wurden hochgeladen",
uploadBufferDoneAndSave: "Die Binärdaten wurden hochgeladen und auf dem Server gespeichert",
title: "Bestätigung",
alert: "Warnung",
info: "Info",
deleteListItem: "Sind Sie sicher, dass Sie dieses Listenelement löschen möchten?",
deleteHashKey: "Sind Sie sicher, dass Sie diesen Hash-Schlüssel löschen möchten?",
deleteStreamTimestamp: "Sind Sie sicher, dass Sie diesen Stream-Zeitstempel löschen möchten?",
deleteSetMember: "Sind Sie sicher, dass Sie dieses Set-Mitglied löschen möchten?",
deleteZSetMember: "Sind Sie sicher, dass Sie dieses Mitglied der sortierten Menge löschen möchten?",
deleteConnection: "Bestätigung",
deleteConnectionText: "Sind Sie sicher, dass Sie diese Redis-Verbindung löschen möchten?",
deleteNode: "Sind Sie sicher, dass Sie diesen Redis-Knoten löschen möchten?",
delete: "Löschen?",
deleteAllKeys: opts => {
return `Diesen Baum und alle seine Schlüssel löschen (${opts.key})?`;
},
deleteSearchKeys: opts => {
return `Sind Sie sicher, dass Sie alle Schlüssel löschen möchten, die "${opts.pattern}" entsprechen? ${opts.count} Schlüssel gefunden.`;
},
socketioConnectError: "Socket.IO kann keine Verbindung zum Server herstellen. Sie können die Seite neu laden und versuchen, den Verbindungsfehler selbst zu beheben. Der Client weiß nicht, wie er ihn selbst lösen kann.",
socketioAuthRequired: "Socket.IO-Autorisierung erforderlich. Bitte authentifizieren Sie sich mit HTTP Basic Auth (Benutzername/Passwort) und laden Sie die Seite neu.",
invalidCredentials: "Ungültiger Benutzername oder Passwort.",
deleteKey: "Sind Sie sicher, dass Sie diesen Schlüssel löschen möchten?",
rename: {
title: "Sind Sie sicher, dass Sie diesen Schlüssel umbenennen möchten?",
textContent: "Diese Aktion benennt den Schlüssel dauerhaft um.",
placeholder: "Der Redis-Schlüssel (erforderlich)"
},
ttl: {
title: "Sind Sie sicher, dass Sie die TTL dieses Schlüssels ändern möchten?",
textContent: "Das Ändern der TTL aktualisiert die Lebensdauer dieses Schlüssels. Leer lassen, um den Schlüssel dauerhaft zu behalten.",
placeholder: "Die TTL des Redis-Schlüssels (Ganzzahl oder leer)",
placeholderPlaceholder: "Leer bedeutet, dass er dauerhaft gespeichert wird; andernfalls geben Sie eine Ganzzahl ein.",
convertTextToTime: "Text in Zeit umwandeln",
convertTextToTimePlaceholder: "Z.B. 1d wird 86400"
}
},
language: {
// When you translate the english name, keep the Language in English
// eg. Inglés / English
bg: "Български / Bulgarian",
cs: "Čeština / Czech",
de: "Deutsch / German",
el: "Ελληνικά / Greek",
en: "English",
es: "Español / Spanish",
fr: "Français / French",
hu: "Magyar / Hungarian",
it: "Italiano / Italian",
ja: "日本語 / Japanese",
nl: "Nederlands / Dutch",
pl: "Polski / Polish",
"pt-PT": "Português / Portuguese",
ro: "Română / Romanian",
ru: "Русский / Russian",
sk: "Slovenčina / Slovak",
sr: "Српски / Serbian",
sv: "Svenska / Swedish",
tr: "Türkçe / Turkish",
uk: "Українська / Ukrainian",
zn: "中文 / Chinese",
ar: "العربية / Arabic",
az: "Azərbaycanca / Azerbaijani",
be: "Беларуская / Belarusian",
bn: "বাংলা / Bengali",
da: "Dansk / Danish",
et: "Eesti / Estonian",
fi: "Suomi / Finnish",
fil: "Filipino / Filipino",
he: "עברית / Hebrew",
hr: "Hrvatski / Croatian",
hy: "Հայերեն / Armenian",
id: "Bahasa Indonesia / Indonesian",
ka: "ქართული / Georgian",
kk: "Қазақша / Kazakh",
km: "ខ្មែរ / Khmer",
ko: "한국어 / Korean",
ky: "Кыргызча / Kyrgyz",
lt: "Lietuvių / Lithuanian",
mk: "Македонски / Macedonian",
ms: "Bahasa Melayu / Malay",
ne: "नेपाली / Nepali",
no: "Norsk / Norwegian",
"pt-BR": "Português (Brasil) / Portuguese (Brazil)",
sl: "Slovenščina / Slovenian",
tg: "Тоҷикӣ / Tajik",
th: "ไทย / Thai",
vi: "Tiếng Việt / Vietnamese",
"zh-HK": "中文(香港) / Chinese (Hong Kong)",
"zh-TW": "中文(台灣) / Chinese (Taiwan)",
bs: 'Bosanski / Bosnian',
si: 'සිංහල / Sinhala',
sw: 'Kiswahili / Swahili',
ta: 'தமிழ் / Tamil'
},
intention: {
copy: "Kopieren",
downloadBuffer: "Binärdatei herunterladen",
setBuffer: "Binärdatei hochladen",
exportKeys: "Schlüssel exportieren",
exportAllKeys: (opts) => `Alle ${opts.count} Schlüssel exportieren`,
exportSearchResults: (opts) => `${opts.count} Ergebnisse exportieren`,
deleteAllKeysMenu: (opts) => `Alle löschen ${opts.count}`,
importKeys: "Schlüssel importieren",
deleteSearchKeys: (opts) => `${opts.count} übereinstimmende Schlüssel löschen`,
saveWithFormatJson: "Mit Formatierung speichern",
formatJson: "Json formatieren",
wrap: "Umbrechen",
unwrap: "Nicht umbrechen",
downloadJson: "JSON herunterladen",
pubsubMonitor: "PubSub",
pulse: "Pulse",
profiler: "Profiler",
memoryAnalysis: "Analysis",
// When you translate the language, keep the Language in English
// eg. Idioma / Language
language: "Sprache / Language",
ok: "OK",
addKey: "Zu diesem Schlüssel hinzufügen",
addKeyRoot: "Stammschlüssel hinzufügen",
reloadKey: "Schlüssel neu laden",
reload: "Neu laden",
close: "Schließen",
commands: "Befehle",
view: "Ansicht",
statistics: "Statistiken",
refresh: "Aktualisieren",
pause: "Pause",
resume: "Fortsetzen",
clear: "Leeren",
rename: "Umbenennen",
main: "Datenbank",
cancel: "Abbrechen",
theme: "Design",
github: "GitHub",
githubRepo: "Repository",
githubRelease: "Versionen",
githubChangelog: "Änderungsprotokoll",
info: "Info",
settings: "Einstellungen",
connect: "Verbinden",
disconnect: "Trennen",
logout: "Abmelden",
overview: "Übersicht",
console: "Konsole",
noConnections: "Keine Verbindungen, fügen Sie eine Verbindung im Einstellungsmenü hinzu.",
noConnectionsInSettings: "Keine Verbindungen, Sie können oben eine NEUE VERBINDUNG hinzufügen.",
connectionAdd: "Neue Verbindung",
addGroup: "Gruppe hinzufügen",
extend: "Erweitern",
collapse: "Zuklappen",
add: "Hinzufügen",
edit: "Bearbeiten",
save: "Speichern",
ttl: "TTL festlegen",
fieldTtl: "Feld-TTL",
digest: "Digest",
delete: "Löschen",
remove: "Entfernen",
areYouSure: "Bist du sicher?",
sure: "Sicher",
testConnection: "Verbindung testen",
getKey: "Redis-Schlüssel und zugehörige Daten werden geladen ...",
jsonViewShow: "JSON anzeigen",
jsonViewEditor: "JSON bearbeiten",
quickConsole: "Schnellkonsole",
moveUp: "Nach oben verschieben",
moveDown: "Nach unten verschieben",
},
diff: {
reviewChanges: "\u00c4nderungen pr\u00fcfen",
inline: "Inline",
sideBySide: "Nebeneinander",
additions: "Erg\u00e4nzungen",
deletions: "L\u00f6schungen",
unchangedLines: "unver\u00e4nderte Zeilen",
noChanges: "Keine \u00c4nderungen erkannt",
before: "Vorher",
after: "Nachher",
},
label: {
id: {
nodeId: 'Knoten-ID',
id: "Verbindungs-ID",
info: "Wenn Sie die Eigenschaften sshPassword, sshPrivateKey, password, tlsCrt, tlsKey, tlsCa nicht ändern möchten, geben Sie bitte die Verbindungs-ID in diesen Eigenschaften ein, um die Eigenschaftswerte beizubehalten. Wenn Sie die gleiche Logik für das Knotenpasswort möchten, geben Sie die Knoten-ID im Knotenpasswort ein."
},
secureFeature: 'Wenn Sie einen Wert sehen, der mit P3X beginnt und gleich aussieht, handelt es sich um eine Sicherheitsfunktion. Um die Einstellungen zu ändern, ersetzen Sie diese Einstellungen einfach durch leere oder andere Werte und sie werden gespeichert. Wenn Sie die Einstellungen nicht ändern, werden sie so beibehalten, wie sie auf dem Server sind.',
aiTranslating: "Übersetze...",
aiSettings: "AI Einstellungen",
aiGroqApiKey: "Groq API-Schlüssel",
aiGroqApiKeyInfo: "Optional. Eigener Groq API-Schlüssel für bessere Leistung. Kostenlosen Schlüssel erhalten von",
aiGroqApiKeyPlaceholder: "gsk_...",
aiGroqApiKeySaved: "AI API-Schlüssel gespeichert",
aiGroqApiKeyInvalid: "Ungültiger Groq API-Schlüssel",
aiGroqApiKeyNotSet: "Nicht gesetzt (Server-Standard)",
aiEnabled: "AI aktiviert",
aiEnabledYes: "Ja",
aiEnabledNo: "Nein",
aiRouteViaNetwork: "Weiterleitung über network.corifeus.com",
aiRoutingDirect: "Anfragen gehen direkt an Groq mit Ihrem eigenen API-Schlüssel und umgehen network.corifeus.com.",
aiRoutingNetwork: "AI-Anfragen werden über network.corifeus.com weitergeleitet. Wenn Sie Ihren eigenen kostenlosen Groq API-Schlüssel haben, können Sie diesen Schalter ausschalten, um direkt zu Groq ohne network.corifeus.com weiterzuleiten.",
aiMaxTokens: "Max. AI-Token",
aiMaxTokensInfo: "Maximale Anzahl von Token für AI-Antworten. Höhere Werte erlauben längere Antworten, können aber mehr API-Guthaben verbrauchen.",
consoleDrawer: {
toggleTooltip: "Konsole umschalten",
clearTooltip: "Scrollback löschen",
closeTooltip: "Konsole schließen",
aiSettingsTooltip: "AI-Einstellungen",
modeRedis: "REDIS",
modeAi: "AI",
connectionChipNoDb: opts => `${opts.name}`,
connectionChipWithDb: opts => `${opts.name} · db ${opts.db}`,
pageChip: opts => `Seite: ${opts.page}`,
connectingTo: opts => `Verbindung zu ${opts.name} wird hergestellt…`,
connectedTo: opts => `Verbunden mit ${opts.name} (Redis ${opts.version} ${opts.mode}, ${opts.modules} Module geladen)`,
connectedToNoInfo: opts => `Verbunden mit ${opts.name}`,
disconnectedFrom: opts => `Von ${opts.name} getrennt`,
readyIndicator: "Bereit."
},
cheatsheet: {
title: "AI Cheatsheet – Was kann ich fragen?",
subtitle: "Klicken Sie auf eine Eingabeaufforderung, um sie in die Konsole einzufügen. Drücken Sie dann die Eingabetaste.",
searchPlaceholder: "Eingabeaufforderungen filtern…",
openOfficialDocs: "Redis Befehle ↗",
openOfficialDocsTooltip: "Öffnen Sie die offizielle Redis-Befehlsreferenz unter redis.io",
closeTooltip: "Schließen (Esc)",
empty: "Keine Eingabeaufforderungen entsprechen Ihrem Filter.",
footerHint: "Tipp: Geben Sie „ai:“ gefolgt von einer beliebigen Sprache ein – der AI versteht 54 Sprachen und verwendet bei Bedarf den Live-Status Redis.",
groups: {
diagnostics: {
name: "Live-Diagnose",
description: "Bitten Sie AI, den Live-Serverstatus mithilfe sicherer schreibgeschützter Tools zu untersuchen.",
prompts: [
"Warum ist der Speicher hoch?",
"Zeigen Sie mir die 10 langsamsten Abfragen",
"Welche Clients sind angeschlossen?",
"Was ist die Maxmemory-Richtlinie?",
"Gab es kürzlich Räumungen?",
"Gibt es ein Latenzereignis?",
"Wie lange ist der Server schon aktiv?",
"Wie hoch ist die Trefferquote?",
"CPU-Auslastung anzeigen",
"Fassen Sie den Schlüsselraum zusammen",
"Wie viel Speicher belegt jeder Datentyp?",
"Blockiert gerade irgendetwas den Server?"
]
},
keys: {
name: "Schlüssel",
description: "Untersuchen, finden und begründen Sie die Schlüssel, ohne durch die Baumstruktur klicken zu müssen.",
prompts: [
"Finde alle Schlüssel, die zu user:* passen",
"Wie viele Schlüssel gibt es in jeder Datenbank?",
"zeige den größten Hash in diesem db",
"Finden Sie Schlüssel mit einer TTL von weniger als 60 Sekunden",
"Welche Tasten haben kein TTL?",
"Welcher Typ ist der Schlüssel session:abc?",
"Schätzen Sie den vom Präfix \"session:\" verwendeten Speicher",
"Zeigt die Objektkodierung des Schlüssels user:42 an",
"Gibt es irgendwelche Schlüssel, die bald ablaufen?",
"Welcher Namespace verbraucht den meisten Speicher?"
]
},
dataTypes: {
name: "Datentypen",
description: "Formulierung in natürlicher Sprache zum Erstellen/Lesen/Aktualisieren für jeden Redis-Typ.",
prompts: [
"Erstellen Sie einen Hash namens user:1 mit den Feldern name=Alice age=30",
"Fügen Sie der Liste tasks drei Elemente hinzu",
"Mitglieder hinzufügen, um favourites festzulegen",
"Bewertete Mitglieder zum sortierten Satz hinzufügen leaderboard",
"Hängen Sie ein Ereignis an den Stream events an.",
"Holen Sie sich die letzten 10 Einträge aus Stream events",
"Holen Sie sich alle Felder des Hash-Benutzers:1",
"Holen Sie sich Mitglieder der Menge favourites",
"Holen Sie sich die Top 10 nach Punktzahl von leaderboard"
]
},
modules: {
name: "Module",
description: "Abfragen für geladene Redis-Module (die folgenden Kategorien werden nur angezeigt, wenn das Modul vorhanden ist).",
prompts: []
},
json: {
name: "RedisJSON",
description: "Verfügbar, wenn das Modul ReJSON geladen ist.",
prompts: [
"Erstellen Sie ein JSON-Dokument bei user:42 mit { Name: \"Alice\", Alter: 30 }",
"Lesen Sie das Namensfeld von user:42",
"Aktualisieren Sie das Alter von user:42 auf 31",
"Listen Sie alle JSON-Schlüssel auf",
"Löschen Sie ein Feld aus einem JSON-Dokument",
"Holen Sie sich ein verschachteltes Feld mit JSONPath"
]
},
search: {
name: "RediSearch",
description: "Verfügbar, wenn das Suchmodul geladen ist.",
prompts: [
"listet alle Volltextindizes auf",
"Führen Sie eine Volltextsuche nach \"redis\" im Index idx:products durch.",
"Erstellen Sie einen Hash-gestützten Index mit den Feldern Titel (TEXT) und Preis (NUMERIC).",
"Informationen zum Index idx:products abrufen",
"Drop-Index idx:products",
"Finden Sie Dokumente, deren Preis zwischen 10 und 50 liegt",
"Schreiben Sie eine Hybridsuche, die Text- und Vektorähnlichkeit kombiniert"
]
},
timeseries: {
name: "RedisTimeSeries",
description: "Verfügbar, wenn das Zeitreihenmodul geladen ist.",
prompts: [
"Listen Sie alle Zeitreihenschlüssel auf",
"Fügen Sie einen Datenpunkt zu temp:room1 hinzu",
"Erhalten Sie den Bereich von temp:room1 von gestern bis heute",
"Holen Sie sich Multi-Range nach Label sensor=temp",
"Generieren Sie 100 Sinuswellen-Datenpunkte für temp:room1",
"Aufbewahrung und Beschriftungen für temp:room1 anzeigen"
]
},
bloom: {
name: "RedisBloom (Blüte / Kuckuck / Top-K / CMS / T-Digest)",
description: "Verfügbar, wenn das bf-Modul geladen ist.",
prompts: [
"Überprüfen Sie, ob Artikel foo im Bloom-Filter spam:ips vorhanden ist.",
"Elemente zum Bloom-Filter hinzufügen spam:ips",
"Erstellen Sie ein Top-K mit dem Namen popular mit K=10",
"Abfrage count-min Sketch traffic für Schlüssel /home",
"Fügen Sie Werte zu t-digest hinzu und erhalten Sie das 95. Perzentil",
"Infos zum Bloomfilter spam:ips anzeigen"
]
},
vectorSet: {
name: "VectorSet (Redis 8+)",
description: "Verfügbar, wenn Redis 8+ erkannt wird (nativer Typ VECTORSET).",
prompts: [
"füge einen Vektor zu embeddings hinzu",
"Finden Sie die 10 Vektoren, die einem Abfragevektor am ähnlichsten sind",
"Abmessungen und Anzahl des Vektorsatzes embeddings anzeigen",
"lösche ein Element aus dem Vektorset embeddings",
"Suche nach Elementnamen mit VSIM"
]
},
redis8: {
name: "Redis 8+ Funktionen",
description: "Wird angezeigt, wenn Redis 8+ erkannt wird.",
prompts: [
"Setze das Hash-Feld ttl mit HEXPIRE",
"Holen Sie sich den Digest eines String-Werts",
"Führen Sie eine hybride Volltext- und Vektorsuche durch (FT.HYBRID)",
"Legen Sie mit MSETEX mehrere Schlüssel mit gemeinsamem Ablauf fest.",
"Löschen Sie einen Stream-Eintrag mit der Verbrauchergruppe (XDELEX)",
"Cluster-Slot-Statistiken für die Top-10-Slots anzeigen"
]
},
scripting: {
name: "Skripterstellung",
description: "Generieren Sie Lua / EVAL-Skripte aus Beschreibungen in natürlicher Sprache.",
prompts: [
"Schreiben Sie ein atomares Skript, das counter X nur dann inkrementiert, wenn Y > 5",
"Generiere 100 zufällige Schlüssel mit Lua",
"Konvertieren Sie diese Shell-Pipeline in eine einzelne EVAL: Schlüssel user:* | GET | grep inaktiv | DEL",
"Portieren Sie einen Batch-Vorgang zur Cluster-Sicherheit auf Lua",
"Check-and-Set-Stilaktualisierung in einem einzigen Lua-Aufruf",
"Durchlaufen Sie einen Hash und löschen Sie Felder, die einem Muster entsprechen"
]
},
cluster: {
name: "Cluster",
description: "Wird nur im Cluster-Modus angezeigt.",
prompts: [
"Clusterinformationen anzeigen",
"Clusterknoten auflisten",
"Zeigt die Top-10-Slots nach Schlüsselanzahl an",
"Zeigt die Top-10-Slots nach Speicher an",
"Welcher Master besitzt Slot 5000?"
]
},
acl: {
name: "ACL (Redis 6+)",
description: "Überprüfen Sie die Zugriffskontrollbenutzer und die aktuelle Verbindung.",
prompts: [
"Mit wem bin ich verbunden?",
"Listen Sie alle ACL-Benutzer auf",
"Welche Berechtigungen habe ich?",
"Zeigt die Standardbenutzerregeln an"
]
},
qna: {
name: "Allgemeine Fragen und Antworten",
description: "Stellen Sie Redis Wissensfragen – keine Tools, nur Antworten.",
prompts: [
"Was ist ZADD?",
"Wie funktioniert Cluster-Failover?",
"Erkläre SCAN vs. KEYS",
"Wann sollte ich EVAL im Vergleich zu mehreren Befehlen verwenden?",
"Was sind die Redis-Persistenzoptionen?",
"Was ist der Unterschied zwischen RDB und AOF?",
"Wie entscheidet Redis Sentinel über einen neuen Master?",
"Erklären Sie Hash-Tags im Cluster-Modus"
]
},
translate: {
name: "Natürliche Sprache → Redis-Befehl",
description: "Beschreiben Sie, was Sie wollen, in einer von 54 Sprachen. Der AI schreibt den Befehl Redis.",
prompts: [
"Schlüssel löschen user:42",
"Benennen Sie den Schlüssel foo in bar um",
"Schlüssel session:abc in 10 Sekunden ablaufen lassen",
"Schlüsselquelle zum Ziel kopieren",
"Zählerbesuche um 5 erhöhen",
"Stellen Sie die Tastenbegrüßung für 1 Stunde auf \"hello\" ein",
"lösche alle user:* Schlüssel",
"zeige mir die 10 meistbeschäftigten Schlüssel"
]
}
}
},
ssh: {
on: 'SSH ein',
off: 'SSH aus',
sshHost: 'SSH Host',
sshPort: 'SSH Port',
sshUsername: 'SSH Benutzername',
sshPassword: 'SSH Passwort',
sshPrivateKey: 'SSH Privater Schlüssel'
},
isBuffer: opts => `[object ArrayBuffer] bedeutet, dass der Wert Binärdaten sind oder der Wert größer als ${opts.maxValueAsBuffer} ist`,
streamValue: `Stream-Feld und -Wert stehen in einer Zeile. Z.B.: field1 value1 "field 2" "value 2"`,
streamTimestampId: `'*' bedeutet automatisch generiert oder die Spezifikation als <millisecondsTime>-<sequenceNumber>`,
unableToLoadKey: ({
key
}) => {
return `Dieser Schlüssel konnte nicht geladen werden: ${key}. Möglicherweise wurde der Schlüssel gelöscht. Der genaue Fehler ist in der Konsole.`;
},
bigJson: "Dieses JSON-Objekt ist über 10 KB groß. Stellen Sie sicher, dass Sie wissen, was Sie tun, da einige Funktionen beim Rendern langsam sein können.",
addNode: "Knoten hinzufügen",
validateJson: "JSON validieren",
reducedFunction: `Eingeschränkte Funktionalität`,
tooManyKeys: opts => {
return `Für die vollen maximalen Funktionen beträgt die erlaubte Gesamtanzahl der Schlüssel ${opts.maxLightKeysCount}. Diese Datenbank hat mehr als die erlaubte Gesamtanzahl der Schlüssel ${opts.count}. Die Schlüsselsortierung und die zusätzlichen Bauminformationen sind deaktiviert. Die Suche erfolgt nur auf dem Server statt auf dem Client.`;
},
redisCommandNotFound: "Kein passender Redis-Befehl gefunden ...",
treeKeyStore: `Die Sortierung (natürlicher Vergleich) wird auf dem Client, also dem Browser, ausgeführt, was bedeutet, dass bei großen Datensätzen mit mehr als 10.000 Schlüsseln etwas zusätzliche Zeit zum Rendern der Seite benötigt werden kann. In Redis gibt es keine Schlüsselsortierung, nur auf diese Weise.`,
socketIoTimeout: options => {
return `Socket.IO hat bei dieser Anfrage das Zeitlimit überschritten (max ${options.timeout / 1000} Sekunden) ...`;
},
resizerInfo: options => {
return `Die Mindestbreite des linken oder rechten Panels beträgt ${options.width}px`;
},
jsonViewNotParsable: "Dieser Wert kann nicht als JSON geparst werden ",
ttlTitle: "TTL in Sekunden festlegen",
passwordSecure: "Das Passwort kann leer sein, zeigt aber dennoch Zeichen an. Dies ist eine Sicherheitsfunktion.",
aclAuthHint: "Verwenden Sie zur Authentifizierung den Redis ACL-Benutzernamen und das Passwort. Für den Standardbenutzer ohne Passwort leer lassen.",
tlsWithoutCert: "TLS ohne zusätzliches Zertifikat aktivieren",
tlsRejectUnauthorized: "Nicht autorisiertes Zertifikat ablehnen",
tlsSecure: "Wenn Sie eine TLS-Konfiguration sehen, die mit P3X beginnt, oder alle TLS-Einstellungen gleich aussehen, handelt es sich um eine Sicherheitsfunktion. Um die Einstellungen zu ändern, ersetzen Sie diese Einstellungen einfach durch leere oder andere Werte und sie werden gespeichert. Wenn Sie die TLS-Einstellungen nicht ändern, werden sie so beibehalten, wie sie auf dem Server sind.",
treeSeparatorEmpty: "Wenn der Baumtrenner leer ist, hat der Baum keine verschachtelten Knoten, nur eine einfache Liste",
treeSeparatorEmptyNote: "Keine verschachtelten Knoten, nur eine einfache Liste",
welcomeConsole: "Willkommen in der Redis-Konsole",
welcomeConsoleInfo: "SHIFT + Verlauf mit Cursor HOCH oder RUNTER ist aktiviert",
redisListIndexInfo: "Leer zum Anhängen, -1 zum Voranstellen oder an der angezeigten Position speichern.",
console: "Konsole",
connectiondAdd: "Verbindung hinzufügen",
connectiondEdit: "Verbindung bearbeiten",
connectiondView: "Verbindung anzeigen",
connections: "Verbindungen",
keysSort: {
on: "Schlüsselsortierung ein",
off: "Schlüsselsortierung aus"
},
cluster: {
on: "Cluster ein",
off: "Cluster aus"
},
sentinel: {
on: "Sentinel ein",
off: "Sentinel aus",
name: "Sentinel-Name"
},
readonly: {
on: "Readonly ein",
off: "Readonly aus"
},
theme: {
light: "Hell",
dark: "Dunkel Enterprise",
darkNeu: "Dunkel",
darkoBluo: "Darko bluo",
enterprise: "Enterprise",
redis: "Redis",
matrix: "Matrix"
},
connected: opts => {
return `Verbunden: ${opts.name}`;
},
tree: "Baum",
askAuth: "Autorisierung anfordern",
keyboardShortcuts: "Tastenkürzel",
about: "Über",
supportedLanguages: "Unterstützte Sprachen",
version: "Version",
redisVersion: "Redis-Version",
modules: "Module",
shortcutRefresh: "Aktualisieren",
shortcutSearch: "Suche fokussieren",
shortcutNewKey: "Neuer Schlüssel",
shortcutDisconnect: "Trennen",
themeAuto: "Automatisch (System)",
languageAuto: "Auto (system)",
shortcutCommandPalette: "Befehlspalette",
commandPalette: "Befehlspalette",
noResults: "Keine Ergebnisse",
redisCommandsReference: "Redis Befehle",
ungrouped: "Ohne Gruppe",
grouped: "Gruppiert",
connectFirst: "Verbinden Sie sich zuerst mit einem Redis-Server",
searchLanguage: "Sprache suchen...",
exportProgress: "Schlüssel werden exportiert...",
importProgress: "Schlüssel werden importiert...",
importPreview: "Vorschau",
importOverwrite: "Überschreiben",
importSkip: "Überspringen",
importConflict: "Wenn der Schlüssel bereits existiert:",
noKeysToExport: "Keine Schlüssel zum Exportieren",
time: "Zeit",
type: "Typ",
format: "Format",
loading: "Laden...",
autoRefresh: "Auto",
exportSearchHint: "Es werden nur Schlüssel exportiert, die der aktuellen Suche entsprechen",
importSearchHint: "Import gilt für die gesamte Datenbank, nicht nur für Suchergebnisse",
deleteSearchHint: "Alle Schlüssel löschen, die der aktuellen Suche entsprechen",
deletingSearchKeys: "Übereinstimmende Schlüssel werden gelöscht...",
importNoKeys: "Keine Schlüssel in der Datei gefunden",
desktopNotifications: "Desktop-Benachrichtigungen",
desktopNotificationsEnabled: "Desktop-Benachrichtigungen aktivieren",
desktopNotificationsInfo: "Erhalten Sie Betriebssystem-Benachrichtigungen bei Redis-Trennungen und Wiederverbindungen, wenn die App nicht im Fokus ist."
},
status: {
dataCopied: "Die Daten sind in der Zwischenablage",
exportDone: "Export abgeschlossen",
deletedSearchKeys: (opts) => `${opts.count} Schlüssel gelöscht`,
indexCreated: "Index erstellt",
indexDropped: "Index gelöscht",
importDone: (opts) => `Import abgeschlossen: ${opts.created} erstellt, ${opts.skipped} übersprungen, ${opts.errors} Fehler`,
nodeRemoved: "Knoten entfernt",
keyIsNotExisting: "Dieser Schlüssel wurde möglicherweise gelöscht oder ist abgelaufen.",
keyCount: opts => {
if (opts.keyCount === 0) {
return "Kein Schlüssel";
} else if (opts.keyCount === 1) {
return "1 Schlüssel";
} else {
return `${opts.keyCount} Schlüssel`;
}
},
treeExpandAll: "Alle Baumblätter aufklappen. Diese Operation kann aufwändig sein und Zeit in Anspruch nehmen ...",
noRedisKeys: "Es gibt keine Schlüssel in dieser Datenbank.",
redisConnected: "Redis erfolgreich verbunden",
reverted: "R\u00fcckg\u00e4ngig gemacht",
reloadingDataInfo: "Redis-Dateninformationen werden neu geladen",
added: "Hinzugefügt",
saved: "Aktualisiert",
cancelled: "Abgebrochen",
deleted: "Gelöscht",
savedRedis: "Redis-Daten wurden gespeichert",
redisDisconnected: opts => {
return `Die aktuelle Verbindung hatte einen Fehler: ${opts.error.message}`;
},
dbChanged: opts => {
return `Der DB-Index wurde auf ${opts.db} gesetzt. `;
},
treeDeleted: opts => {
return `Der Baumschlüssel wurde gelöscht (${opts.key}).`;
},
deletedKey: opts => {
return `Der Schlüssel wurde gelöscht (${opts.key}).`;
},
renamedKey: "Dieser Schlüssel wurde umbenannt",
ttlChanged: "Die TTL dieses Schlüssels wurde geändert",
notInteger: "Diese Eingabe ist keine Ganzzahl",
persisted: "Dieser Schlüssel wird dauerhaft gespeichert",
set: "Der Schlüssel ist gesetzt/hinzugefügt",
connectionRestored: "Verbindung wiederhergestellt",
socketDisconnected: "Getrennt",
socketError: "Verbindungsfehler",
deletedHashKey: "Hash-Schlüssel gelöscht",
deletedSetMember: "Set-Mitglied gelöscht",
deletedListElement: "Listenelement gelöscht",
deletedZSetMember: "Sortiertes-Set-Mitglied gelöscht",
deletedStreamTimestamp: "Stream-Eintrag gelöscht",
},
code: {
"delete-connection": "Diese Verbindung wurde gelöscht, daher sind Sie von dieser Redis-Instanz getrennt.",
"save-connection": "Diese Verbindung wurde geändert, daher sind Sie von dieser Redis-Instanz getrennt. Sie können sich erneut verbinden.",
"readonly-connections": "Verbindungen hinzufügen/speichern/löschen ist schreibgeschützt!",
"readonly-connection-mode": "Diese Verbindung ist im schreibgeschützten Modus!",
"list-out-of-bounds": "Dieser Listenindex liegt außerhalb des Bereichs",
"invalid-json-value": "The value is not valid JSON.",
"http_auth_required": "Autorisierung erforderlich: Bitte authentifizieren Sie sich mit HTTP Basic Auth und laden Sie die Seite neu.",
"auto-connection-failed": "Möglicherweise wurde die Verbindung entfernt und die automatische Verbindung ist deshalb fehlgeschlagen.",
invalid_console_command: "Dieser Befehl funktioniert nicht über die GUI.",
"AI_DISABLED": "AI ist deaktiviert. Aktivieren Sie es in den AI-Einstellungen.",
"AI_PROMPT_REQUIRED": "AI-Eingabe ist erforderlich.",
"GROQ_API_KEY_READONLY": "Der Groq API-Schlüssel ist schreibgeschützt und kann nicht geändert werden.",
"blocked_api_access": "Ihr Groq API-Plan erlaubt keinen Zugriff auf dieses Modell. Bitte upgraden Sie Ihren Groq-Plan oder verwenden Sie den network.corifeus.com Proxy.",
"rate_limit": "AI-Ratenlimit erreicht. Versuchen Sie es später erneut oder verwenden Sie Ihren eigenen Groq API-Schlüssel in den Einstellungen."
},
form: {
error: {
required: "Erforderlich",
port: "Der Port liegt zwischen 1-65535",
invalid: "Das Formular ist ungültig"
},
connection: {
label: {
name: "Name",
group: "Gruppe",
host: "Hostname",
port: "Port",
password: "Passwort",
username: "Benutzername"
}
},
treeSettings: {
maxValueDisplay: "Maximale Anzeigelänge des Wertes",
maxValueDisplayInfo: "Bei 0 werden vollständige Werte angezeigt. Bei größer als 0 wird auf diese Länge gekürzt. Bei -1: Für Zeichenketten wird der Wert bis zur Bearbeitung ausgeblendet; für andere Typen wird der vollständige Inhalt angezeigt.",
maxKeys: "Maximale Schlüsselanzahl",
maxKeysInfo: "Damit die GUI nicht abstürzt, begrenzen wir die maximale Schlüsselanzahl.",
keyCount: (opts) => {
return `Anzahl der Schlüssel: ${opts?.keyCount ?? 0}`;
},
label: {
animation: "Animation verwenden",
noAnimation: "Keine Animation",
undoEnabled: "R\u00fcckg\u00e4ngig aktiviert",
undoDisabled: "R\u00fcckg\u00e4ngig deaktiviert",
diffEnabled: "Diff vor dem Speichern anzeigen",
diffDisabled: "Diff vor dem Speichern deaktiviert",
jsonFormatTwoSpace: "JSON mit 2 Leerzeichen formatieren",
jsonFormatFourSpace: "JSON mit 4 Leerzeichen formatieren",
formName: "Redis-Einstellungen",
searchModeClient: "Client-Suchmodus",
searchModeServer: "Server-Suchmodus",
searchModeStartsWith: "Suche mit Beginnt-mit-Modus",
searchModeIncludes: "Enthält-Suchmodus"
},
undoHint: "R\u00fcckg\u00e4ngig machen ist nur f\u00fcr die Schl\u00fcsseltypen string und JSON verf\u00fcgbar",
field: {
treeSeparator: "Baumtrenner",
treeSeparatorSelector: "Baumtrenner-Selektor",
page: "Baum-Seitenanzahl",
keyPageCount: "Schlüssel pro Seite",
keysSort: "Schlüssel sortieren",
searchMode: "Suchmodus",
searchModeStartsWith: "Suche beginnt mit / enthält"
},
error: {
keyPageCount: "Die Schlüsselanzahl pro Seite muss eine Ganzzahl zwischen 5 - 100 sein",
page: "Die Seitenanzahl muss eine Ganzzahl zwischen 10 - 5000 sein",
maxValueDisplay: "Der maximale Anzeigewert muss eine Ganzzahl zwischen -1 und 32768 sein",
maxKeys: "Die maximale Schlüsselanzahl muss eine Ganzzahl zwischen 100 und 100000 sein"
}
},
key: {
label: {
formName: {
add: "Neuen Redis-Schlüssel hinzufügen",
edit: "Redis-Schlüssel bearbeiten",
append: "Zu bestehendem Redis-Schlüssel hinzufügen"
}
},
field: {
streamTimestamp: "Zeitstempel",
key: "Schlüssel",
type: "Typ",
index: "Index",
hashKey: "Hash-Schlüssel",
score: "Punktzahl",
value: "Wert",
errorRate: "Fehlerrate",
capacity: "Kapazität",
topk: "Top K",
width: "Breite",
depth: "Tiefe",
decay: "Zerfall",
compression: "Komprimierung",
increment: "Inkrement",
item: "Element",
vectorValues: "Vektorwerte (kommagetrennt)",
element: "Elementname",
},
error: {
streamTimestamp: "Der Zeitstempel ist erforderlich, entweder im Redis-Format oder als *",
key: "Der Schlüssel muss mindestens ein Zeichen lang sein",
hashKey: "Der Hash-Schlüssel muss mindestens ein Zeichen lang sein",
score: "Die Punktzahl der sortierten Menge ist erforderlich",
value: "Der Wert ist erforderlich",
errorRate: "Die Fehlerrate muss zwischen 0 und 1 liegen (z.B. 0.01)",
capacity: "Die Kapazität muss eine positive Ganzzahl sein",
topk: "Top K muss eine positive Ganzzahl sein",
width: "Die Breite muss eine positive Ganzzahl sein",
depth: "Die Tiefe muss eine positive Ganzzahl sein",
item: "Das Element ist erforderlich"
}
},
main: {
label: {
database: "DB"
}
}
},
page: {
search: {
title: "Suche",
index: "Index",
query: "Abfrage",
results: "Ergebnisse",
noIndex: "Keine Indizes gefunden",
createIndex: "Index erstellen",
dropIndex: "Index löschen",
indexInfo: "Index-Info",
indexName: "Indexname",
prefix: "Schlüsselpräfix (optional)",
fieldName: "Feldname",
hybridMode: "Hybridsuche (FT.HYBRID)",
vectorField: "Vektorfeld",
vectorValues: "Vektorwerte",
},
monitor: {
title: "Überwachung",
memory: "Speicher",
opsPerSec: "Ops/Sek",
clients: "Clients",
blocked: "Blockiert",
hitsMisses: "Trefferquote",
networkIo: "Netzwerk I/O",
slowLog: "Langsamer Log",
noSlowQueries: "Es wurden keine langsamen Abfragen aufgezeichnet.",
confirmSlowLogReset: "Sind Sie sicher, dass Sie das langsame Protokoll zurücksetzen möchten?",
slowLogResetDone: "Das langsame Protokoll wurde zurückgesetzt.",
totalCommands: "Gesamt",
expired: "Abgelaufen",
evicted: "Verdrängt",
clientList: "Client-Liste",
topKeys: "Größte Schlüssel nach Speicher",
killClient: "Client beenden",
clientKilled: "Client beendet",
confirmKillClient: "Sind Sie sicher, dass Sie diesen Client beenden möchten?",
noKeys: "Keine Schlüssel",
rss: "RSS",
peak: "Spitze",
fragmentation: "Fragmentierung",
hitsAndMisses: "Treffer / Fehlschläge",
noClients: "Keine Clients",
slotStats: "Cluster-Slot-Statistiken",
serverInfo: "Serverinformationen",
os: "Betriebssystem",
port: "Netzwerkport",
pid: "Prozess-ID",
configFile: "Konfigurationsdatei",
uptime: "Betriebszeit",
keyspace: "Redis-Schlüsselraum",
keys: "Redis-Schlüssel",
expires: "Läuft ab",
noKeyspace: "Keine Schlüssel",
persistence: "Datenpersistenz",
rdbLastSave: "Letzte RDB-Speicherung",
rdbStatus: "RDB-Status",
rdbChanges: "Änderungen seit dem letzten Speichern",
aofEnabled: "AOF aktiviert",
aofSize: "AOF-Größe",
replication: "Redis-Replikation",
role: "Replikationsrolle",
replicas: "Verbundene Replikate",
masterHost: "Primärer Knotenhost",
linkStatus: "Status der Replikationsverbindung",
cpu: "CPU-Auslastung",
cpuSys: "System",
cpuUser: "Benutzer",
modules: "Geladene Redis-Module",
noModules: "Keine Redis-Module geladen",
clusterSlotMap: "Redis-Cluster-Slot-Karte",
slotRange: "Cluster-Slot-Bereich",
totalSlots: "Gesamte Cluster-Slots",
noClusterData: "Keine Redis-Clusterdaten verfügbar.",
},
analysis: {
title: "Speicheranalyse",
runAnalysis: "Analyse starten",
running: "Wird analysiert...",
typeDistribution: "Typverteilung",
prefixMemory: "Speicher nach Präfix",
topKeysByMemory: "Größte Schlüssel nach Speicher",
expirationOverview: "Schlüsselablauf",
memoryBreakdown: "Speicheraufschlüsselung",
keysScanned: "Gescannte Schlüssel",
totalMemory: "Gesamtspeicher",
rssMemory: "RSS-Speicher",
peakMemory: "Spitzenspeicher",
luaMemory: "Lua-Speicher",
overheadMemory: "Overhead",
datasetMemory: "Datensatz",
fragmentation: "Fragmentierung",
allocator: "Allokator",
withTTL: "Mit TTL",
persistent: "Permanent",
avgTTL: "Durchschnittliche TTL",
prefix: "Präfix",
keyCount: "Schlüsselanzahl",
memoryUsage: "Speicherverbrauch",
noPrefix: "(kein Präfix)",
topN: "Top N",
maxScanKeys: "Max. gescannte Schlüssel",
type: "Typ",
noData: "Keine Daten. Klicken Sie auf Analyse starten, um zu beginnen.",
exportAll: "Alles exportieren",
memoryDoctor: "Memory Doctor",
doctorNoData: "Klicken Sie auf Aktualisieren, um die Memory Doctor-Diagnose auszuführen.",
},
acl: {
title: "ACL-Benutzer",
loadUsers: "Benutzer laden",
loading: "Laden...",
username: "Benutzername",
status: "Status",
enabled: "Aktiviert",
disabled: "Deaktiviert",
commands: "Befehle",
commandsHint: "z. B. +@all or +@read -@dangerous",
keys: "Redis-Schlüsselmuster",
keysHint: "z. B. ~* or ~user:*",
channels: "Pub/Sub-Kanäle",
channelsHint: "z. B. &* or ¬ifications:*",
password: "Passwort",
noPassword: "Kein Passwort (nopass)",
passwordHint: "Lassen Sie das Feld leer, um das aktuelle Passwort beizubehalten",
currentUser: "Aktuell",
createUser: "Benutzer erstellen",
editUser: "Benutzer bearbeiten",
deleteUser: "Löschen",
confirmDelete: "Sind Sie sicher, dass Sie den ACL-Benutzer löschen möchten?",
userDeleted: "Der ACL-Benutzer wurde gelöscht.",
userSaved: "Der ACL-Benutzer wurde gespeichert.",
cannotDeleteDefault: "Der Standardbenutzer kann nicht gelöscht werden.",
cannotDeleteSelf: "Der aktuell verbundene Benutzer kann nicht gelöscht werden.",
noUsers: "ACL erfordert Redis 6.0+.",
groupCommon: "Allgemein",
groupDataTypes: "Datentypen",
groupOperations: "Operationen",
rules: "Regeln",
rulesHint: "Durch Leerzeichen getrennte Token (zum Beispiel on >password +@all ~* &*)",
defaultUserWarning: "Achtung: Durch das Ändern des Standardbenutzers können alle Verbindungen gesperrt werden. In diesem Fall müssen Sie Redis neu starten oder redis-cli verwenden, um den Zugriff wiederherzustellen.",
},
overview: {
noConnected: "Es besteht keine Verbindung zu Redis.",
overviewClients: "Verbundene nach Anzahl der Clients auflisten",
connectedCount: opt => {
if (opt.length === 1) {
return "1 Client";
}
return `${opt.length} Clients`;
}
},
key: {
label: {
key: "Schlüssel",
encoding: "Kodierung",
compression: "Komprimierung",
aiRateLimited: "AI-Anfragelimit erreicht. Versuchen Sie es später erneut oder verwenden Sie Ihren eigenen Groq-API-Schlüssel in den Einstellungen.",
aiError: "AI-Abfrage fehlgeschlagen",
length: "Größe",
ttl: "TTL",
ttlTitle: "Lebensdauer",
type: "Typ",
ttlNotExpire: "läuft nicht ab",
lengthString: "Bytes",
lengthItem: "Elemente",
actions: "Aktionen"
},
list: {
table: {
index: "Index",
value: "Wert"
}
},
hash: {
table: {
hashkey: "Hash-Schlüssel",
value: "Wert"
}
},
set: {
table: {
value: "Mitglied"
}
},
zset: {
table: {
value: "Mitglied",
score: "Punktzahl"
}
},
stream: {
table: {
timestamp: "Zeitstempel-ID",
field: "Feld",
value: "Wert"
}
},
timeseries: {
chart: "Diagramm",
info: "Info",
addPoint: "Punkt hinzufügen",
from: "Von (ms oder -)",
to: "Bis (ms oder +)",
aggregation: "Aggregation",
timeBucket: "Bucket (ms)",
none: "Keine",
dataPoints: "Datenpunkte",
labels: "Labels",
rules: "Regeln",
retention: "Aufbewahrung",
timestamp: "Zeitstempel",
value: "Wert",
retentionHint: "0 = kein Ablauf, oder Millisekunden",
duplicatePolicy: "Duplikatrichtlinie",
labelsHint: "Schlüssel1 Wert1 Schlüssel2 Wert2",
timestampHint: "'*' bedeutet automatisch generiert, oder Millisekunden-Zeitstempel",
editAllHint: "Ein Datenpunkt pro Zeile: Zeitstempel Wert (Zeitstempel kann * für automatisch sein)",
autoSpread: "Automatisches * Streuintervall",
formula: "Formel",
formulaLinear: "Linear",
formulaRandom: "Zufällig",
formulaSawtooth: "Sägezahn",
formulaPoints: "Punkte",
formulaAmplitude: "Amplitude",
formulaOffset: "Offset",
generate: "Generieren",
exportChart: "PNG exportieren",
overlay: "Schlüssel überlagern",
overlayHint: "Kommagetrennte Schlüssel",
mrangeFilter: "Label-Filter",
bulkMode: "Massengenerierung",
mrangeHint: "z.B. sensor=temp"
},
probabilistic: {
info: "Info",
addItem: "Element hinzufügen",
checkItem: "Element prüfen",
item: "Element",
exists: "Existiert",
doesNotExist: "Existiert nicht",
topkList: "Top Elemente",
topkCount: "Anzahl",
queryCount: "Abfrageanzahl",
queryResult: "Abfrageergebnis",
addedSuccessfully: "Element erfolgreich hinzugefügt",
deletedSuccessfully: "Element erfolgreich gelöscht",
quantile: "Quantil",
quantileResult: "Ergebnis",
noItems: "Keine Elemente zum Anzeigen",
resetConfirm: "Alle Daten in diesem T-Digest zurücksetzen?",
},
vectorset: {
info: "Info",
elements: "Elemente",
similarity: "Ähnlichkeitssuche",
searchByElement: "Nach Element suchen",
searchByVector: "Nach Vektor suchen",
vectorValues: "Vektorwerte",
element: "Element",
score: "Punktzahl",
count: "Anzahl",
addElement: "Element hinzufügen",
attributes: "Attribute",
noAttributes: "Keine Attribute",
dimensions: "Dimensionen",
removeConfirm: "Dieses Element aus dem VectorSet entfernen?",
noElements: "Keine Elemente",
filter: "Filter",
searchComplete: "Suche abgeschlossen",
}
},
treeControls: {
settings: "Baumeinstellungen",
expandAll: "Alle aufklappen",
collapseAll: "Alle zuklappen",
level: "Ebene",
search: {
search: "In Schlüsseln suchen",
clear: "Aktuelle Suche leeren",
placeholderClient: "Clientseitig suchen",
placeholderServer: "Serverseitig suchen",
info: (opts) => "Die clientseitige Suche bedeutet, dass der Text im Suchfeld abgeglichen wird. Die serverseitige Suche bedeutet, dass in den Schlüsselmustern wie *{Suchtext}* gesucht wird. Für große Datensätze ist es besser, die serverseitige Suche zu verwenden. Für kleinere Datensätze ist es besser, den clientseitigen Suchmodus zu verwenden." + ` Wenn die Schlüsselanzahl über ${opts?.maxLightKeysCount ?? 110000} liegt, können Sie nur serverseitig suchen.`,
largeSetInfo: "Bei einem großen Datensatz ist die clientseitige Suche deaktiviert, daher ist derzeit nur die serverseitige Suche möglich.",
infoDetails: "Um herauszufinden, wie die Suche funktioniert, überprüfen Sie bitte die Einstellungen"
},
pager: {
next: "Nächste",
prev: "Vorherige",
first: "Erste",
last: "Letzte"
}
}
},
time: {
years: "Jahre",
months: "Monate",
days: "Tage",
year: "Jahr",
month: "Monat",
day: "Tag",
second: "Sekunde",
seconds: "Sekunden",
minute: "Minute",
minutes: "Minuten",
hour: "Stunde",
hours: "Stunden"
},
redisTypes: {
string: "String",
list: "List",
hash: "Hash table",
set: "Set",
zset: "Sorted set - zset",
stream: "Stream",
json: "JSON",
timeseries: "Time Series",
bloom: "Bloom Filter",
cuckoo: "Cuckoo Filter",
topk: "Top-K",
cms: "Count-Min Sketch",
tdigest: "T-Digest",
vectorset: "VectorSet",
},
promo: {
title: "AI Netzwerkassistent",
description: "Entdecken Sie unseren kostenlosen AI-Netzwerkassistenten unter network.corifeus.com – analysieren Sie Domänen, IPs, DNS-Datensätze, SSL-Zertifikate, E-Mail-Sicherheit und Netzwerkinfrastruktur. Unterstützt von AI für sofortige, umfassende Ergebnisse.",
disclaimer: "Diese Aktion wird nur auf der Demo-Site angezeigt und erscheint nicht in Docker, Electron oder Web-App-Bereitstellungen.",
toastMessage: "Testen Sie unseren kostenlosen Netzwerkassistenten AI unter network.corifeus.com – analysieren Sie Domänen, DNS, SSL und mehr!",
visit: "Besuchen Sie network.corifeus.com"
}
};
module.exports = strings;