feat(i18n): 覆盖支持扩展到 19 语言(de/fr/pt/ko/ar/hi/id/tr/vi/th/ru/it/nl/sv/pl/zh-HK/zh-TW/zh-MO)

This commit is contained in:
HuanLinOTO
2026-08-23 14:57:48 +08:00
parent 16a809594c
commit 7f8f95a59b
20 changed files with 6224 additions and 2 deletions
+331
View File
@@ -0,0 +1,331 @@
/**
* German dictionary for better-sidebar.
*/
export const de: Record<string, string> = {
files: 'Dateien',
explorer: 'Explorer',
git: 'Quellcodeverwaltung',
terminal: 'Terminal',
editor: 'Editor',
editorExplorer: 'Dateiöffnungsverhalten',
editorExplorerDesc: 'Steuert, wie Dateien geöffnet werden',
editorExplorerMerged: 'Zusammengeführt',
editorExplorerMergedDesc: 'Dateien wechseln im selben Fenster; neue Fenster starten mit geöffneter Baumansicht',
editorExplorerSplit: 'Getrennt',
editorExplorerSplitDesc: 'Fenster ohne Pfad sind der eigenständige Explorer (nur Dateibaum); jede Datei öffnet ein eigenes Fenster (mit angedocktem, standardmäßig eingeklapptem Baum)',
editorTreeToggle: 'Dateibaum-Panel',
editorPathPlaceholder: 'Dateipfad (relativ zum Sitzungsverzeichnis oder absolut), Enter zum Öffnen',
editorSearchPlaceholder: 'Nach Dateiname suchen…',
editorSearchNoResults: 'Keine passenden Dateien',
editorSearchTruncated: 'Zu viele Ergebnisse – nur ein Teil wird angezeigt',
editorEmptyHint: 'Wählen Sie eine Datei aus dem Dateibaum rechts oder dem Pfadeingabefeld oben, um mit der Vorschau zu beginnen',
openFileNewTab: 'In neuem Tab öffnen',
openFileSide: 'Seitlich öffnen',
openWithMenu: 'Öffnen mit',
openWithSshSuffix: ' (SSH)',
pinOpenWith: 'Im Menü anheften',
unpinOpenWith: 'Lösen',
openWithExplorer: 'Dateimanager',
openWithVscode: 'VS Code',
openWithCursor: 'Cursor',
openWithZed: 'Zed',
openWithSettingsSshTitle: 'SSH-Remote-Host',
openWithSettingsSshDesc: 'Leer = lokaler Arbeitsbereich; bei Angabe von user@host oder eines SSH-Alias verwenden die VSCode-Familienöffner das vscode-remote/ssh-remote-Protokoll, und Dateimanager / Zed / benutzerdefinierte Editoren außerhalb der VSCode-Familie werden im Menü ausgeblendet',
openWithSettingsSshPlaceholder: 'user@host oder SSH-Alias',
openWithSettingsCustomTitle: 'Benutzerdefinierte Editoren',
openWithSettingsCustomDesc: 'Name + URL-Vorlage ({path}-Platzhalter) + VSCode-Familien-Kennzeichen; im SSH-Modus können nur Editoren der VSCode-Familie Remote-Pfade öffnen',
openWithSettingsAdd: 'Hinzufügen',
openWithSettingsName: 'Name',
openWithSettingsTemplate: 'z. B. cursor://file/{path}',
openWithSettingsFamily: 'VSCode-Familie',
openWithSettingsFamilyDesc: 'Dieser Editor spricht das VSCode-URL-Protokoll (unterstützt SSH-Remote-Öffnen)',
openWithSettingsRemove: 'Entfernen',
openWithSettingsInvalidHint: 'Editoren ohne Namen oder mit Vorlage ohne {path} / scheme:// erscheinen nicht im Menü',
newTab: 'Neuer Tab',
openExplorer: 'Explorer',
brokenSymlink: 'Defekter Symlink',
openGit: 'Git-Panel',
newTerminal: 'Neues Terminal',
terminalLimit: 'Terminal-Limit erreicht (3)',
close: 'Schließen',
closeOtherTabs: 'Andere Tabs schließen',
closeLeftTabs: 'Tabs links schließen',
closeRightTabs: 'Tabs rechts schließen',
collapse: 'Seitenleiste einklappen',
expand: 'Seitenleiste ausklappen',
collapseBottomPanel: 'Unteres Panel einklappen',
expandBottomPanel: 'Unteres Panel ausklappen',
terminalError: 'Terminalverbindung fehlgeschlagen',
terminalConnectFailed: 'Terminal konnte wiederholt keine Verbindung herstellen',
terminalRetry: 'Erneut versuchen',
terminalDepsFailed: 'Die Terminal-Abhängigkeit node-pty konnte nicht geladen werden',
terminalDepsHint: 'Führen Sie den folgenden Befehl in einem Terminal oder in cmd auf dem DSH-System aus, um dies zu beheben, und klicken Sie dann auf „Erneut versuchen“ (node-pty bleibt mit der DSH-Core-Version synchron):',
terminalDepsProfile: ' (erkanntes Profil: {profile})',
preview: 'Vorschau',
edit: 'Bearbeiten',
mermaidError: 'Mermaid-Rendering fehlgeschlagen',
mermaidZoomIn: 'Vergrößern',
mermaidZoomOut: 'Verkleinern',
mermaidZoomReset: 'Zurücksetzen',
mermaidZoomHint: 'Scrollen zum Zoomen · Ziehen zum Verschieben · Esc zum Schließen',
refresh: 'Aktualisieren',
save: 'Speichern',
saved: 'Gespeichert',
unsaved: 'Nicht gespeichert',
saveFailed: 'Speichern fehlgeschlagen',
truncation: 'Datei zu groß – nur die ersten 512KB werden angezeigt',
binary: 'Binärdatei, Vorschau nicht verfügbar',
loading: 'Wird geladen…',
error: 'Laden fehlgeschlagen',
retry: 'Erneut versuchen',
splitLeft: 'Nach links teilen',
splitRight: 'Nach rechts teilen',
splitUp: 'Nach oben teilen',
splitDown: 'Nach unten teilen',
notRepo: 'Dieses Verzeichnis ist kein Git-Repository',
noChanges: 'Keine Änderungen',
stage: 'Stagen',
unstage: 'Unstagen',
stageAll: 'Alle stagen',
unstageAll: 'Alle unstagen',
commitPlaceholder: 'Commit-Nachricht (Ctrl+Enter)',
commit: 'Committen',
commitError: 'Commit fehlgeschlagen',
branch: 'Branch',
checkoutError: 'Branchenwechsel fehlgeschlagen',
history: 'Verlauf',
changes: 'Änderungen',
staged: 'Gestaged',
unstaged: 'Nicht gestaged',
cancel: 'Abbrechen',
diffEmpty: 'Keine Textunterschiede',
diffLoadError: 'Diff konnte nicht geladen werden',
diffBinary: 'Binär',
diffAdded: 'Hinzugefügt',
diffDeleted: 'Gelöscht',
diffRenamed: 'Umbenannt',
diffExpand: '{count} weitere Zeilen ausklappen',
diffCollapse: 'Einklappen',
discard: 'Änderungen verwerfen',
discardTitle: 'Änderungen verwerfen',
discardDesc: 'Dadurch werden die Arbeitsbereichsänderungen von „{path}“ verworfen (nicht wiederherstellbar).',
viewCommitDiff: 'Commit-Diff ansehen',
copyShortHash: 'Kurzen Hash kopieren',
copyFullHash: 'Vollständigen Hash kopieren',
copySubject: 'Commit-Titel kopieren',
revertCommit: 'Commit zurücknehmen',
revertTitle: 'Commit zurücknehmen',
revertDesc: 'Erstellt einen neuen Commit im aktuellen Branch, der „{subject}“ rückgängig macht.',
cherryPickCommit: 'Commit cherripicken',
cherryPickTitle: 'Commit cherripicken',
cherryPickDesc: 'Wendet die Änderungen von „{subject}“ auf den aktuellen Branch an.',
timeJustNow: 'gerade eben',
timeMinutesAgo: 'vor {n} Min.',
timeHoursAgo: 'vor {n} Std.',
timeYesterday: 'gestern',
loadMore: 'Mehr laden',
historyLoadError: 'Laden weiterer Verlaufseinträge fehlgeschlagen',
produced: 'Erstellt',
producedOpen: 'In der Seitenleiste öffnen',
disconnected: 'Terminalverbindung getrennt, Verbindung wird wiederhergestellt…',
exited: 'Terminalprozess beendet',
noSession: 'Wählen Sie eine Sitzung, um die Seitenleiste zu verwenden',
pluginNotLoaded: 'Plugin nicht geladen; Tab vorübergehend nicht verfügbar:',
hiddenFiles: 'Versteckte Dateien',
parent: 'Übergeordnetes Verzeichnis',
copied: 'Kopiert',
copy: 'Kopieren',
newFile: 'Neue Datei',
openEditor: 'Editor öffnen',
gitDetail: 'Änderungsdetails ansehen',
referenceFile: '@Datei',
addToConversation: 'Zur Unterhaltung hinzufügen',
copyRelative: 'Relativen Pfad kopieren',
copyAbsolute: 'Absoluten Pfad kopieren',
download: 'Herunterladen',
uploadFiles: 'Dateien hochladen',
uploadFolder: 'Ordner hochladen',
uploadHere: 'Hierher hochladen',
uploadDropHint: 'Dateien/Ordner hierher ziehen, um sie hochzuladen',
uploadDropChat: 'In den Chatbereich ziehen: Bilder zur Unterhaltung hinzufügen',
uploadTo: 'Nach {dir} hochladen',
uploadingTo: 'Wird nach {dir} hochgeladen…',
uploadProgress: 'Lade {done}/{total} hoch: {name}',
uploadDone: '{count} Dateien hochgeladen',
uploadFailed: 'Upload fehlgeschlagen: {error}',
uploadFailedUnknown: 'Unbekannter Fehler',
uploadTooLarge: 'Datei zu groß (über dem Upload-Limit)',
uploadCancelled: 'Upload abgebrochen',
settingsNav: 'Seitenkarte',
settingsIntro: 'Verwalten Sie, was die Seitenkarte anzeigt und wie sie sich verhält',
settingsPopupDesc: 'Optionen für „{feature}“ konfigurieren',
settingsDone: 'Fertig',
settingsOpenTitle: 'Für neue Unterhaltungen standardmäßig geöffnet',
settingsOpenDesc: 'Die Seitenkarte wird für brandneue Unterhaltungen automatisch ausgeklappt; bestehende Unterhaltungen behalten ihr eigenes Layout',
settingsWidthTitle: 'Standardbreite',
settingsWidthDesc: 'Standardanteil der Seitenkarte an der Fensterbreite für neue Unterhaltungen (20–60)',
settingsWidthSuffix: '%',
settingsOpenPathTitle: 'Chat-Dateien in der Seitenleiste öffnen',
settingsOpenPathDesc: 'Dateilinks im Chat (Werkzeugzeilen, erstellte Dateien, Erwähnungen) werden im Seitenleisten-Editor geöffnet statt in der System-Standardanwendung',
settingsTitleBarTitle: 'Kompatibilitätsmodus der Position',
settingsTitleBarDesc: 'Kompatibilitätsschema der Titelleiste wählen: automatische Erkennung (Standard, konservativ) / offizielles DSH-Web / bekannte Desktop-Shells / benutzerdefiniert (Verschiebung + benutzerdefiniertes CSS)',
settingsTitleBarStripTitle: 'Verschiebungsabstand',
settingsTitleBarStripDesc: 'Höhe des Titelleisten-Streifens: um wie viele Pixel Seitenleisten-Buttons und -Inhalt nach unten rutschen (0–120, Standard 40; wirkt beim benutzerdefinierten Schema)',
settingsSchemeAutoTitle: 'Automatische Erkennung',
settingsSchemeAutoDesc: 'Konservativ: nur die Standard-API „Window Controls Overlay“ trägt bei (echte Caption-Overlay-Höhe); reine Web-Umgebungen erhalten keine Anpassung',
settingsSchemeWebTitle: 'Offizielles DSH-Web',
settingsSchemeWebDesc: 'Explizit die offizielle Webversion erklären: keinerlei Anpassung (nicht einmal die Standard-WCO-Geometrie)',
settingsSchemeCustomTitle: 'Benutzerdefiniert',
settingsSchemeCustomDesc: 'Volle Kontrolle: benutzerdefiniertes CSS einspielen (kann eingebaute Stile überschreiben) und den Verschiebungsabstand der Titelleiste festlegen',
settingsSchemeDetectedSuffix: 'erkannt',
settingsCustomCssTitle: 'Benutzerdefiniertes CSS',
settingsCustomCssDesc: 'Am Seitenende angehängte Stile (bei gleicher Priorität gewinnt der spätere; zum Überschreiben von JS-Inline-Variablen ist !important nötig)',
settingsCustomCssPlaceholder: '/* z. B. 36px für eine Shell mit selbst gezeichneter Titelleiste reservieren */\nhtml[data-dsh-title-bar-height="36"] {\n --dsh-title-bar-strip: 36px !important;\n}',
settingsSaveFailed: 'Speichern fehlgeschlagen',
settingsConflict: 'Die Einstellung wurde in einem anderen Fenster geändert – bitte erneut versuchen',
binaryNoPreview: 'Dieser Dateityp kann nicht in der Vorschau angezeigt werden',
downloadToView: 'Zum Ansehen herunterladen',
settingsSubagentTitle: 'Aufgaben-Seite bei einem Subagenten automatisch öffnen',
settingsSubagentDesc: 'Die Seitenkarte wird ausgeklappt und die Aufgaben-Seite geöffnet, wenn die aktuelle Unterhaltung einen neuen Subagenten erzeugt; ausschalten, um sie manuell zu öffnen',
settingsJobsTitle: 'Aufgaben-Seite bei einer neuen Hintergrundaufgabe automatisch öffnen',
settingsJobsDesc: 'Die Seitenkarte wird ausgeklappt und die Aufgaben-Seite geöffnet, sobald für die aktuelle Unterhaltung eine neue Hintergrundaufgabe erscheint (jede neue Aufgabe löst dies aus); ausschalten, um sie manuell zu öffnen',
settingsToolsTitle: 'Terminal-Werkzeuge für das Modell bereitstellen',
settingsToolsDesc: 'Wenn aktiviert, kann das Modell über die 8 terminal_*-Werkzeuge Terminale in der Seitenleiste erstellen und steuern (standardmäßig deaktiviert)',
settingsBottomTerminalTitle: 'Beim ersten Ausklappen des unteren Panels automatisch ein Terminal öffnen',
settingsBottomTerminalDesc: 'Wird das untere Panel in einer Sitzung zum ersten Mal ausgeklappt, wird dort versucht, einen neuen Terminal-Tab zu öffnen (das Terminal-Kontingent gilt weiterhin; standardmäßig aktiviert)',
settingsFontFamilyTitle: 'Terminal-Schriftart',
settingsFontFamilyDesc: 'Benutzerdefinierte Terminal-Schriftfamilie (ein CSS-font-family-Stapel wie "JetBrains Mono", monospace; leer lassen, um der Monospace-Schrift des Themas zu folgen)',
settingsFontFamilyPlaceholder: '"JetBrains Mono", monospace',
settingsFontSizeTitle: 'Terminal-Schriftgröße',
settingsFontSizeDesc: 'Terminal-Schriftgröße in px (9–32, Standard 13)',
settingsFontSizeSuffix: 'px',
settingsShellTitle: 'Shell-Pfad',
settingsShellDesc: 'Shell für UI- und Modell-Terminals (absoluter Pfad oder ausführbarer Name). Leer lassen für die bestehende Reihenfolge: config.shell aus der yaml → $SHELL / Login-Shell / powershell.exe unter Windows. Wirkt für danach geöffnete Terminals',
settingsShellPlaceholder: 'z. B. /bin/zsh (leer = automatisch)',
settingsShellArgsTitle: 'Shell-Argumente',
settingsShellArgsDesc: 'Explizite Shell-Startargumente, durch Leerzeichen getrennt; wenn nicht leer, ersetzen sie die Standardargumente vollständig (gleicher Vertrag wie shellArgs in der yaml)',
settingsShellArgsPlaceholder: 'z. B. -l (leer = Standardargumente)',
settingsTabsTitle: 'Seitenleisten-Inhalt',
settingsViewersTitle: 'Datei-Viewer',
settingsGeneralTitle: 'Allgemein',
settingsPopup: 'Funktionseinstellungen',
settingsViewerCatchAll: 'Catch-all: beliebige Datei',
viewerImage: 'Bild',
viewerPdf: 'PDF',
viewerMarkdown: 'Markdown',
viewerCode: 'Code',
viewerBinary: 'Binär-Download',
viewerHtml: 'HTML',
browser: 'Browser',
browserPlaceholder: 'URL eingeben, z. B. example.com',
browserGo: 'Los',
browserBack: 'Zurück',
browserForward: 'Vor',
browserStart: 'URL eingeben, um mit dem Browsen zu beginnen (Sandbox-Modus)',
browserBlockedScheme: 'Blockiert: nur http/https-Links sind erlaubt',
browserBlockedLoopback: 'Blockiert: lokale und interne Adressen können hier nicht aufgerufen werden',
browserInvalid: 'Ungültige URL',
browserNoSandboxWarning: 'Sandbox aus: Die aktuelle Seite läuft mit vollen Benutzeroberflächen-Rechten (in den Einstellungen wieder aktivierbar)',
htmlNoSandboxWarning: 'Sandbox aus: Dieses HTML läuft mit vollen Benutzeroberflächen-Rechten (in den Einstellungen wieder aktivierbar)',
sandboxStatusOn: 'Sandbox-Modus: aktiviert · Seiten können weder auf die Daten der Oberfläche noch auf lokale Dateien zugreifen; Anmeldungen und Drittanbieter-Cookies funktionieren möglicherweise nicht',
sandboxUnlock: 'Vorübergehend deaktivieren (unsicher)',
sandboxRestore: 'Sandbox wiederherstellen',
settingsHtmlDefaultUnsafeTitle: 'HTML-Vorschauen standardmäßig ohne Sandbox öffnen (unsicher)',
settingsHtmlDefaultUnsafeDesc: 'Wenn aktiviert, startet jede neu geöffnete HTML-Vorschau ohne Sandbox (gleiche Herkunft wie die Oberfläche – sie kann Sitzungsdateien und interne APIs lesen); die Statuszeile bietet weiterhin eine einmalige Wiederherstellung',
settingsHtmlSandboxTitle: 'HTML-Vorschau-Sandbox deaktivieren (unsicher)',
settingsHtmlSandboxDesc: 'Ohne Sandbox läuft das angezeigte HTML mit der gleichen Herkunft wie die Oberfläche: Es kann Sitzungsdateien und lokalen Speicher lesen und interne APIs aufrufen. Nur für vollständig vertrauenswürdige Dateien aktivieren',
settingsBrowserSandboxTitle: 'Browser-Sandbox deaktivieren (unsicher)',
settingsBrowserSandboxDesc: 'Ohne Sandbox läuft jede besuchte Website mit der gleichen Herkunft wie die Oberfläche: Sie kann Sitzungsdaten lesen und sich als Ihre Anmeldung ausgeben. Nur für vollständig vertrauenswürdige Websites aktivieren',
settingsBrowserLinksTitle: 'Externe Links aus dem Chat in der Seitenleiste öffnen',
settingsBrowserLinksDesc: 'Wenn aktiviert, öffnet ein Klick auf einen externen Link im Chat oder in der Oberfläche die Seitenleiste statt eines neuen Fensters; HTTP und HTTPS werden getrennt über die Schalter unten gesteuert; Ctrl/Cmd-Klick umgeht dies immer',
settingsBrowserHttpTitle: 'HTTP-Seiten in der Seitenleiste öffnen',
settingsBrowserHttpDesc: 'Wenn aktiviert, öffnet ein Klick auf einen HTTP-Externlink im Chat oder in der Oberfläche die Seitenleiste (Plugin-Seiten mit urlTarget gewinnen); Ctrl/Cmd-Klick umgeht dies immer',
settingsBrowserHttpsTitle: 'HTTPS-Seiten in der Seitenleiste öffnen',
settingsBrowserHttpsDesc: 'Wenn aktiviert, öffnet ein Klick auf einen HTTPS-Externlink im Chat oder in der Oberfläche die Seitenleiste. Standardmäßig deaktiviert: Die meisten HTTPS-Sites verweigern die Einbettung, der Systembrowser ist der reibungslosere Standard',
browserOpenExternal: 'Im Browser öffnen',
browserEmbedBlocked: '{host} hat die Einbettung verweigert',
browserEmbedBlockedDesc: 'Die Site verbietet die Anzeige in anderen Seiten (X-Frame-Options / frame-ancestors) und kann daher nicht in der Seitenleiste geladen werden. Öffnen Sie sie stattdessen direkt im Browser.',
browserEmbedAnyway: 'Trotzdem laden',
subagent: 'Aufgaben',
openSubagent: 'Aufgaben',
subagentMainAgent: 'Hauptagent',
subagentEmpty: 'Keine Subagenten',
subagentEmptyDesc: 'Subagenten, die unter dem Hauptagenten erzeugt werden, erscheinen hier',
subagentRunning: 'Läuft',
subagentInactive: 'Inaktiv',
subagentModeOneShot: 'Einmalig',
subagentModeContinuable: 'Fortsetzbar',
subagentCount: '{count} Subagenten',
subagentCountRunning: '{count} Subagenten · {running} läuft',
subagentDiagCorrupt: 'Beschädigt',
subagentDiagUnsupported: 'Nicht unterstützt',
subagentDiagUnavailable: 'Nicht verfügbar',
subagentThinking: 'Denkt nach…',
sideChat: 'Seitenchat (beta)',
sideChatNew: 'Neuer Thread',
sideChatUntitled: 'Neuer Thread',
sideChatEmpty: 'Keine Seitenunterhaltungen',
sideChatEmptyDesc: 'Jede Seitenunterhaltung ist ein eigener Tab in der Tab-Leiste – sie erbt den Kontext der aktuellen Sitzung und wird nie Teil der Hauptunterhaltung',
sideChatCreating: 'Seitenunterhaltung wird erstellt…',
sideChatRetry: 'Erneut versuchen',
sideChatThreads: 'Thread wechseln / neu',
sideChatSave: 'Als neue Sitzung speichern',
sideChatSaveTitle: 'Diesen Thread in der Hauptsitzungsliste zu einer Top-Level-Sitzung erheben',
sideChatSaved: 'Als neue Sitzung gespeichert',
sideChatNoTurn: 'Das Speichern ist nach der ersten abgeschlossenen Runde verfügbar',
sideChatPendingDrop: 'Die letzte unbeantwortete Nachfrage wird in der gespeicherten Sitzung nicht enthalten sein',
sideChatFirstPlaceholder: 'Stellen Sie die erste Frage – der Kontext ist geerbt…',
sideChatComposerPlaceholder: 'Nachfrage stellen…',
sideChatThinking: 'Denkt vertieft…',
sideChatThink: 'Denkvorgang',
sideChatInjection: 'Kontext eingespielt',
sideChatSend: 'Senden',
sideChatCancel: 'Stoppen',
sideChatCancelTitle: 'Laufende Runde abbrechen (wartende Nachrichten bleiben erhalten)',
sideChatClose: 'Thread schließen',
sideChatCloseTitle: 'Den Agenten des Threads freigeben (Verlauf bleibt erhalten)',
sideChatError: 'Seitenchat-Fehler: {message}',
jobs: 'Hintergrundaufgaben',
jobsCount: '{count} Hintergrundaufgaben',
jobsCountRunning: '{count} Hintergrundaufgaben · {running} läuft',
jobStatusRunning: 'Läuft',
jobStatusStopping: 'Wird beendet',
jobStatusCompleted: 'Abgeschlossen',
jobStatusKilled: 'Beendet',
jobStatusFailed: 'Fehlgeschlagen',
jobDurationSeconds: '{seconds} s',
jobDurationMinutes: '{minutes} m {seconds} s',
jobDurationHours: '{hours} h {minutes} m',
jobViewOutput: 'Ausgabe ansehen',
jobHideOutput: 'Ausgabe ausblenden',
jobNoOutput: 'Noch keine Ausgabe',
jobNotReadYet: 'Warten, bis das Modell die Ausgabe dieser Aufgabe liest (nach Ausführung von job_output durch das Modell erscheint die Ausgabe hier)',
jobOutputTruncated: 'Ausgabe zu lang, gekürzt angezeigt',
jobOutputError: 'Ausgabe konnte nicht gelesen werden',
jobKill: 'Beenden',
jobKillConfirm: 'Zum Bestätigen erneut klicken',
jobKillError: 'Beenden fehlgeschlagen',
addPluginsTabCard: 'Tab-Plugins hinzufügen',
addPluginsTabCardDesc: 'Eine neue Seitenleisten-Seite registrieren',
addPluginsViewerCard: 'Vorschau-Plugins hinzufügen',
addPluginsViewerCardDesc: 'Eine Dateityp-Vorschau registrieren',
addPluginsTabDesc: 'Seitenleisten-Seiten (Tabs) können durch Plugins erweitert werden. Plugins registrieren sich über den ctx.betterSidebar-Dienst; ein Klick auf „Installieren“ kopiert den Installationsbefehl – fügen Sie ihn in einem Terminal ein, in dem Ihr DSH-Profil liegt, und führen Sie ihn aus.',
addPluginsViewerDesc: 'Datei-Viewer können durch Plugins erweitert werden. Plugins registrieren sich über den ctx.betterSidebar-Dienst; ein Klick auf „Installieren“ kopiert den Installationsbefehl – fügen Sie ihn in einem Terminal ein, in dem Ihr DSH-Profil liegt, und führen Sie ihn aus.',
addPluginsBrowseMore: 'Weitere Plugins auf GitHub durchsuchen (Topic: dsh-better-sidebar)',
addPluginsSearch: 'Nach Plugin-Name oder -Beschreibung suchen…',
addPluginsNoMatch: 'Keine passenden Plugins',
addPluginsRecommended: 'Empfohlene Plugins',
addPluginsEmpty: 'Noch keine Plugins katalogisiert – veröffentlichen Sie Ihre Plugin unter dem GitHub-Topic',
openPlugin: 'Öffnen',
copyInstall: 'Installationsbefehl kopieren',
pluginOfficeDesc: 'Office-Suite-Vorschau (.docx / .xlsx / .pptx) für den better-sidebar-Editor, die die schweren Office-Render-Bibliotheken aus dem Kernbundle heraushält',
pluginFlowglassDesc: 'Live-Sitzungsflussdiagramm: dreispurige Darstellung von Benutzer, Assistent und Werkzeugaufrufen mit parallelen Gruppen, Subagent-Zweigen, Drill-down und Live-Status; registriert bei installiertem better-sidebar einen nativen „Flowglass“-Tab und behält sonst eine eigenständige Schublade',
pluginGitForgeDesc: '„Git-Anmeldedaten“-Tab: Konto-Bibliothek für Forges wie GitHub/Gitea + projektbezogene Freigaben + harte Push-Richtlinie; Tokens liegen nur in lokalen Secrets, nie im Modellkontext; bietet ein schreibgeschütztes GitForge-Werkzeug und einen HTTPS-Credential-Helper für den Agenten',
pluginGitRemotesDesc: '„Git-Remotes“-Tab: Branches/Upstream/ahead-behind ansehen, fetch (optional prune), ff-only pull und push erst nach Bestätigung im Tab. Ersetzt nicht den eingebauten Stagen/Commit-Tab und bietet weder force-push noch automatisches Push-Werkzeug für das Modell',
pluginSentinelDesc: 'Bedingungsgesteuertes Wecksystem für Agenten: Datei-/Prozess-/Port-/HTTP-/Befehls-/Webhook-Sensoren wecken ruhende Sitzungen, wenn Bedingungen zutreffen; registriert einen „Sentinel“-Tab mit der serverweiten Überwachungstabelle',
pluginSidebarQaDesc: 'Auswählen-und-Fragen mit Tab-Aufteilung: Text in der Unterhaltung auswählen → rechts im Panel fragen → eine eigene Folgesitzung (❓Nachfrage) im selben Arbeitsbereich; ein schnelles Modell ohne Denkvorgang komprimiert den Hauptkontext und spielt ihn samt Zitat ein, ohne die Hauptunterhaltung zu unterbrechen. Nachfragen lassen sich verschachteln, fortsetzen und archivieren',
pluginSshTunnelDesc: '„SSH-Tunnel“-Tab: Multi-Host-Inventar + projektbezogene Freigaben + lokale Schlüsselverwahrung; Modellwerkzeug SSHManager (exec/SFTP/Sitzungsstrategien); zentrales interaktives Terminal und zweispaltiges SFTP',
pluginTurnReviewDesc: 'Eine menschliche Freigabestufe für den Diff der „gerade abgeschlossenen Runde“: Approve / Request changes pro Pfad mit optionalem Kommentar; Pfade gruppiert nach Hauptsitzung / Subagent / nicht zugeordnet; Inline-Diff von Snapshot-vs-jetzt, bevor Sie entscheiden. Kein Fork, kein /rewind',
pluginVideoPreviewDesc: 'Inline-Videovorschau (.mp4/.webm/.mov/.mkv/.avi usw.) für den better-sidebar-Editor, gestützt auf eine eigene /video-Hostroute mit HTTP-Range-Unterstützung (206) – das Scrubbing funktioniert und Dateien unterliegen nicht dem 20MB-mediaLimit',
pluginDocsPanelDesc: '„Globale Dokumente“ in der DSH-Seitenleiste: eigene Markdown-Notizen aus jedem Arbeitsbereich lesen – Dateiliste, Gliederung, Öffnen in Chrome / VS Code und Kopieren-Buttons; das Dokumentenverzeichnis ist konfigurierbar (Standard ~/.dsh/docs)',
}