图模式(主显示模式)换成新的卡片语言,树模式保持不变: - 卡片 = 上段(类型徽章 + 相位徽标 + 名称两行 + mono 元信息 + 团队任务行) + 下段小条(状态点 + 状态词 + 主 Agent 同款合并活动 + 完成后的折叠 chevron)。 类型徽章用页面自己的词汇(主代理 / 子代理 / 成员 / 工作流 / ✓N 已完成)。 - 分组色(层级):按树深度取 4 档令牌色阶(color-mix 混 --dsw-alias-state-business-primary), 作用于左描边与上段极淡底色;相位徽标走 ink 色族,两套分组不撞色。 相位虚线框保留但改用同色极淡描边,卡片徽标承担「这是哪个阶段」。 - 执行态:小条 `data-running` + 从左到右扫光(1.5s,末 1/3 停顿, prefers-reduced-motion 关闭);合并活动行来自宿主 chat 词条,缺失时回退插件文案。 - 折叠:已完成节点的 chevron 把该节点「收进已完成聚合」(模型新增 foldedIds, 与全局 folded 走同一组守卫:只在已结算叶子、非当前会话、非团队成员时生效); 聚合节点点击 = 全部展开(清空手动集 + 关闭全局折叠);控制条仍只管全局规则。 - 布局与窄栏(用户反馈 a–f):卡片高度预算按新行重算(徽章 + 两行标题 + 元信息 + 小条 = 103px,任务行 +18),宽度 176 → 190;fit 按内容包围盒双轴居中、 FIT_MAX_SCALE 1.15 → 1.30;缩放范围 0.4–2.0 并归一化 wheel deltaMode; 平移加边界夹取(至少 72px 内容留在视口内);空画布双击重新适配并恢复自动 fit; 连线改「垂直出线 stub + 贝塞尔」并加粗到 1.5px。 验证:typecheck / lint 通过;pnpm test 1253 passed / 9 skipped(含新增双段结构、 data-running、chevron → 聚合、聚合 → 全部展开、工作流相位徽标 5 例)。 (cherry picked from commit aee571e50beb5dc979995f0841cffd0a575f2173)
492 lines
33 KiB
TypeScript
492 lines
33 KiB
TypeScript
/**
|
||
* The pl (Polish) dictionary for the betterSidebar namespace.
|
||
*
|
||
* Mirrors the key set of `zh` in `locales.ts`. The sidebar's `t()`
|
||
* consults this dict when `attachBetterLocale(store)` has been called
|
||
* with an active better-locale store whose `active` is `'pl'`; absent
|
||
* that, the existing zh/en chain runs unchanged.
|
||
*
|
||
* Translation conventions:
|
||
* - Formal register (Pan/Pani/Państwo) for user-facing copy.
|
||
* - Polish diacritics used throughout (ą, ć, ę, ł, ń, ó, ś, ź, ż).
|
||
* - {placeholder} patterns kept verbatim (interpolation runs after lookup).
|
||
* - Git vocabulary follows the English-leaning developer style
|
||
* (commit, branch, stage, diff, cherry-pick, hash, push, fetch, pull).
|
||
* - English brand names (VS Code, Cursor, Zed, SSH, Mermaid, HTML, CSS,
|
||
* PDF, Markdown, Cursor) stay as-is.
|
||
*/
|
||
|
||
/** The pl dictionary (key-set-equal to zh, enforced by the type annotation in locales.ts). */
|
||
export const pl: Record<string, string> = {
|
||
files: 'Pliki',
|
||
guideDescFiles: 'Przeglądaj drzewo plików obszaru roboczego; klik otwiera podgląd lub edycję',
|
||
guideDescGit: 'Zmiany Git i zmiany plików z tej sesji w jednej karcie',
|
||
guideDescSubagent: 'Graf przepływu pracy, tablica zadań zespołu i zadania w tle, na żywo',
|
||
guideDescSidechat: 'Niezależny wątek uzupełniający dziedziczący kontekst tej sesji',
|
||
guideDescTerminal: 'Prawdziwy shell (xterm + pty) z ponownym łączeniem',
|
||
guideDescBrowser: 'Wbudowana przeglądarka, może przejmować linki z czatu',
|
||
changesSessionEmpty: 'Brak operacji na plikach w tej sesji',
|
||
changesRead: 'Odczyt',
|
||
changesMdReading: 'Czytanie',
|
||
changesHtmlRender: "Renderuj",
|
||
changesHtmlRaw: "Źródło",
|
||
changesPdfRender: "Renderuj",
|
||
changesPdfRaw: "Źródło",
|
||
changesMdRaw: 'Źródło',
|
||
changesWrite: 'Zapis',
|
||
changesEdit: 'Edycja',
|
||
changesRunning: 'w toku',
|
||
changesError: 'błąd',
|
||
changesFold: '{count} wierszy… kliknij, aby rozwinąć',
|
||
changesFoldLoading: 'Rozwijanie…',
|
||
changesFoldUnavailable: 'Kontekst niedostępny',
|
||
changesContext: 'kontekst',
|
||
changesPriorUnknown: 'Zawartość sprzed zmiany jest poza oknem; pokazana jako w całości nowa',
|
||
explorer: 'Eksplorator',
|
||
terminal: 'Terminal',
|
||
editor: 'Edytor',
|
||
editorExplorer: 'Sposób otwierania plików',
|
||
editorExplorerDesc: 'Kontroluje sposób otwierania plików',
|
||
editorExplorerMerged: 'Połączone',
|
||
editorExplorerMergedDesc: 'Pliki przełączają się w miejscu w tym samym oknie; nowe okna zaczynają z rozwiniętym drzewem',
|
||
editorExplorerSplit: 'Osobne',
|
||
editorExplorerSplitDesc: 'Okna bez ścieżki to samodzielny eksplorator (tylko drzewo); każdy plik otwiera własne okno (drzewo zadokowane, domyślnie zwinięte)',
|
||
editorTreeToggle: 'Panel drzewa plików',
|
||
editorPathPlaceholder: 'Ścieżka pliku (względna do katalogu sesji lub bezwzględna), Enter, aby otworzyć',
|
||
editorSearchPlaceholder: 'Szukaj po nazwie pliku…',
|
||
editorSearchNoResults: 'Brak pasujących plików',
|
||
editorSearchTruncated: 'Zbyt wiele wyników — pokazuję częściową listę',
|
||
editorEmptyHint: 'Wybierz plik z panelu drzewa lub pola ścieżki powyżej, aby rozpocząć podgląd',
|
||
openFileNewTab: 'Otwórz w nowej karcie',
|
||
openFileSide: 'Otwórz z boku',
|
||
openWithMenu: 'Otwórz za pomocą',
|
||
openWithSshSuffix: ' (SSH)',
|
||
pinOpenWith: 'Przypnij do menu',
|
||
unpinOpenWith: 'Odepnij',
|
||
openWithExplorer: 'Menedżer plików',
|
||
openWithVscode: 'VS Code',
|
||
openWithCursor: 'Cursor',
|
||
openWithZed: 'Zed',
|
||
openWithSettingsSshTitle: 'Zdalny host SSH',
|
||
openWithSettingsSshDesc: 'Puste = lokalny obszar roboczy; z user@host lub aliasem SSH otwieracze rodziny VSCode przełączają się na protokół vscode-remote/ssh-remote, a Menedżer plików / Zed / niestandardowe edytory spoza rodziny VSCode są ukrywane w menu',
|
||
openWithSettingsSshPlaceholder: 'user@host lub alias SSH',
|
||
openWithSettingsCustomTitle: 'Niestandardowe edytory',
|
||
openWithSettingsCustomDesc: 'Nazwa + szablon URL (zastępnik {path}) + flaga rodziny VSCode; w trybie zdalnym tylko edytory rodziny VSCode mogą otwierać ścieżkę zdalną',
|
||
openWithSettingsAdd: 'Dodaj',
|
||
openWithSettingsName: 'Nazwa',
|
||
openWithSettingsTemplate: 'np. cursor://file/{path}',
|
||
openWithSettingsFamily: 'Rodzina VSCode',
|
||
openWithSettingsFamilyDesc: 'Ten edytor używa dialektu URL VSCode (obsługuje otwieranie zdalne przez SSH)',
|
||
openWithSettingsRemove: 'Usuń',
|
||
openWithSettingsInvalidHint: 'Edytory z brakującą nazwą lub szablonem bez {path} / scheme:// nie są pokazywane w menu',
|
||
newTab: 'Nowa karta',
|
||
brokenSymlink: 'Uszkodzone dowiązanie symboliczne',
|
||
close: 'Zamknij',
|
||
closeOtherTabs: 'Zamknij inne karty',
|
||
closeLeftTabs: 'Zamknij karty po lewej',
|
||
closeRightTabs: 'Zamknij karty po prawej',
|
||
pinTerminal: 'Przypnij Terminal',
|
||
pinAgentTerminal: 'Przypnij Terminal Agent',
|
||
pinToWorkspace: 'Przypnij do obszaru roboczego',
|
||
pinToGlobal: 'Przypnij globalnie',
|
||
unpinTerminal: 'Odepnij',
|
||
collapseBottomPanel: 'Zwiń panel dolny',
|
||
expandBottomPanel: 'Rozwiń panel dolny',
|
||
terminalError: 'Połączenie z terminalem nie powiodło się',
|
||
terminalConnectFailed: 'Terminal nie mógł połączyć się wielokrotnie',
|
||
terminalRetry: 'Ponów',
|
||
terminalWaitBanner: 'Agent czeka na {needle}',
|
||
terminalSkipWait: 'Pomiń oczekiwanie',
|
||
terminalDepsFailed: 'Zależność terminala node-pty nie mogła się załadować',
|
||
terminalDepsHint: 'Uruchom poniższe polecenie w terminalu lub cmd na maszynie DSH, aby to naprawić, a następnie ponów (node-pty pozostaje w synchronizacji z wersją rdzenia DSH):',
|
||
terminalDepsProfile: ' (wykryty profil: {profile})',
|
||
terminalShellNotFound: 'Nie znaleziono skonfigurowanej powłoki: {name} — sprawdź ścieżkę powłoki w Ustawienia → Side card → Terminal',
|
||
preview: 'Podgląd',
|
||
toc: 'Spis treści',
|
||
edit: 'Edytuj',
|
||
mermaidError: 'Renderowanie Mermaid nie powiodło się',
|
||
mermaidZoomIn: 'Powiększ',
|
||
mermaidZoomOut: 'Pomniejsz',
|
||
mermaidZoomReset: 'Resetuj',
|
||
mermaidZoomHint: 'Kółko: powiększenie · przeciąganie: panowanie · Esc: zamknięcie',
|
||
refresh: 'Odśwież',
|
||
showInFolder: 'Pokaż w folderze',
|
||
refreshUnsavedConfirm: 'Plik zmienił się na dysku. Odświeżenie odrzuci niezapisane zmiany. Kontynuować?',
|
||
save: 'Zapisz',
|
||
saved: 'Zapisano',
|
||
unsaved: 'Niezapisane',
|
||
saveFailed: 'Zapis nie powiódł się',
|
||
truncation: 'Plik zbyt duży — pokazuję pierwsze 512 KB',
|
||
binary: 'Plik binarny, podgląd niedostępny',
|
||
loading: 'Ładowanie…',
|
||
error: 'Ładowanie nie powiodło się',
|
||
retry: 'Ponów',
|
||
notRepo: 'Ten katalog nie jest repozytorium git',
|
||
noChanges: 'Brak zmian',
|
||
statusTruncated: 'Zbyt wiele zmian; pokazywane jest tylko pierwsze 2000 wpisów',
|
||
stage: 'Dodaj do indeksu',
|
||
unstage: 'Usuń z indeksu',
|
||
stageAll: 'Dodaj wszystko do indeksu',
|
||
unstageAll: 'Usuń wszystko z indeksu',
|
||
commitPlaceholder: 'Komunikat commitu (Ctrl+Enter)',
|
||
commit: 'Commit',
|
||
branch: 'Gałąź',
|
||
worktree: 'Drzewo robocze',
|
||
checkoutError: 'Przełączenie gałęzi nie powiodło się',
|
||
history: 'Historia',
|
||
changes: 'Zmiany plików',
|
||
changesGitLens: 'Git',
|
||
changesSessionLens: 'Sesja',
|
||
changesFilterAll: 'Wszystko',
|
||
changesFilterEmpty: 'Brak operacji tego rodzaju',
|
||
changesOpenDiffTab: 'Otwórz w osobnej karcie',
|
||
changesClosePreview: 'Zamknij podgląd',
|
||
changesResizePreview: 'Zmień wysokość podglądu',
|
||
changesLoadError: 'Zapisy plików sesji są teraz niedostępne',
|
||
staged: 'W indeksie',
|
||
unstaged: 'Poza indeksem',
|
||
cancel: 'Anuluj',
|
||
diffEmpty: 'Brak zmian tekstowych',
|
||
diffLoadError: 'Ładowanie diff nie powiodło się',
|
||
diffBinary: 'Binarny',
|
||
diffAdded: 'Dodany',
|
||
diffDeleted: 'Usunięty',
|
||
diffRenamed: 'Zmieniono nazwę',
|
||
diffExpand: 'Rozwiń jeszcze {count} wierszy',
|
||
discard: 'Odrzuć zmiany',
|
||
discardTitle: 'Odrzuć zmiany',
|
||
discardDesc: 'To odrzuci zmiany w drzewie roboczym dla „{path}” (nieodwracalne).',
|
||
viewCommitDiff: 'Pokaż diff commitu',
|
||
copyShortHash: 'Kopiuj krótki hash',
|
||
copyFullHash: 'Kopiuj pełny hash',
|
||
copySubject: 'Kopiuj temat commitu',
|
||
revertCommit: 'Cofnij commit',
|
||
revertTitle: 'Cofnij commit',
|
||
revertDesc: 'Utworzy nowy commit na bieżącej gałęzi, który cofa „{subject}”.',
|
||
cherryPickCommit: 'Cherry-pick commit',
|
||
cherryPickTitle: 'Cherry-pick commit',
|
||
cherryPickDesc: 'Zastosuje zmiany z „{subject}” na bieżącej gałęzi.',
|
||
timeJustNow: 'przed chwilą',
|
||
timeMinutesAgo: '{n} min temu',
|
||
timeHoursAgo: '{n} g temu',
|
||
timeYesterday: 'wczoraj',
|
||
loadMore: 'Wczytaj więcej',
|
||
historyLoadError: 'Ładowanie dalszej historii nie powiodło się',
|
||
produced: 'Wyprodukowane',
|
||
disconnected: 'Terminal odłączony, ponowne łączenie…',
|
||
exited: 'Proces terminala zakończony',
|
||
noSession: 'Wybierz rozmowę, aby korzystać z panelu bocznego',
|
||
pluginNotLoaded: 'Wtyczka niezaładowana; karta chwilowo niedostępna:',
|
||
parent: 'Katalog nadrzędny',
|
||
copied: 'Skopiowano',
|
||
copy: 'Kopiuj',
|
||
openEditor: 'Otwórz edytor',
|
||
referenceFile: '@plik',
|
||
addToConversation: 'Dodaj do rozmowy',
|
||
copyRelative: 'Kopiuj ścieżkę względną',
|
||
copyAbsolute: 'Kopiuj ścieżkę bezwzględną',
|
||
rename: 'Zmień nazwę',
|
||
renameInvalid: 'Nazwa nie może być pusta ani zawierać separatorów ścieżki.',
|
||
delete: 'Usuń',
|
||
deleteTitle: 'Usunąć „{name}”?',
|
||
deleteDescFile: 'Spowoduje to trwałe usunięcie pliku. Tej operacji nie można cofnąć.',
|
||
deleteDescDir: 'Spowoduje to trwałe usunięcie katalogu i całej jego zawartości. Tej operacji nie można cofnąć.',
|
||
dismiss: 'Zamknij',
|
||
download: 'Pobierz',
|
||
uploadFiles: 'Wgraj pliki',
|
||
uploadFolder: 'Wgraj folder',
|
||
uploadHere: 'Wgraj tutaj',
|
||
uploadDropHint: 'Upuść pliki/foldery tutaj, aby wgrać',
|
||
uploadDropChat: 'Upuść na obszar czatu, aby dodać obrazy do rozmowy',
|
||
uploadTo: 'Wgraj do {dir}',
|
||
uploadingTo: 'Wgrywanie do {dir}…',
|
||
uploadProgress: 'Wgrywanie {done}/{total}: {name}',
|
||
uploadDone: 'Wgrano {count} plików',
|
||
uploadFailed: 'Wgrywanie nie powiodło się: {error}',
|
||
uploadFailedUnknown: 'Nieznany błąd',
|
||
uploadTooLarge: 'Plik zbyt duży (ponad limit wgrywania)',
|
||
uploadCancelled: 'Wgrywanie anulowane',
|
||
settingsNav: 'Karta boczna',
|
||
settingsIntro: 'Zarządzaj tym, co pokazuje karta boczna i jak się zachowuje',
|
||
settingsPopupDesc: 'Skonfiguruj opcje powiązane z: {feature}',
|
||
settingsDone: 'Gotowe',
|
||
settingsOpenToolsTitle: 'Wstrzyknij narzędzie otwierania panelu bocznego dla modelu',
|
||
settingsOpenToolsDesc: 'Po włączeniu model może otwierać pliki, foldery i strony HTTP(S) w panelu bocznym za pomocą narzędzia sidebar_open (domyślnie wyłączone)',
|
||
settingsTitleBarTitle: 'Tryb zgodności pozycji',
|
||
settingsTitleBarDesc: 'Wybierz schemat zgodności paska tytułu: automatyczne wykrywanie (domyślne, konserwatywne) / oficjalny web DSH / znane powłoki pulpitu / niestandardowy (przesunięcie + własne CSS)',
|
||
settingsTitleBarStripTitle: 'Przesunięcie',
|
||
settingsTitleBarStripDesc: 'Wysokość paska tytułu: o ile pikseli przyciski i treść panelu bocznego są przesunięte w dół (0–120, domyślnie 40; obowiązuje w schemacie niestandardowym)',
|
||
settingsSchemeAutoTitle: 'Automatyczne wykrywanie',
|
||
settingsSchemeAutoDesc: 'Konserwatywne: tylko standardowe API Window Controls Overlay się wlicza (rzeczywista wysokość nakładki); zwykłe środowiska web nie są modyfikowane',
|
||
settingsSchemeWebTitle: 'Oficjalny web DSH',
|
||
settingsSchemeWebDesc: 'Jawnie zadeklaruj oficjalny interfejs web: brak adaptacji (nawet standardowa geometria WCO nie ma zastosowania)',
|
||
settingsSchemeCustomTitle: 'Niestandardowy',
|
||
settingsSchemeCustomDesc: 'Pełna kontrola: wstrzykuj własne CSS (może nadpisać style wbudowane) i ustawiasz przesunięcie paska tytułu',
|
||
settingsSchemeDetectedSuffix: 'wykryto',
|
||
settingsCustomCssTitle: 'Niestandardowe CSS',
|
||
settingsCustomCssPlaceholder: '/* np. zarezerwuj 36px dla powłoki z własnym paskiem tytułu */\nhtml[data-dsh-title-bar-height="36"] {\n --dsh-title-bar-strip: 36px !important;\n}',
|
||
settingsSaveFailed: 'Zapis nie powiódł się',
|
||
settingsConflict: 'Ustawienie zmienione w innym oknie — spróbuj ponownie',
|
||
binaryNoPreview: 'Tego typu pliku nie można wyświetlić w podglądzie',
|
||
downloadToView: 'Pobierz, aby zobaczyć',
|
||
settingsSubagentTitle: 'Automatycznie aktywuj stronę „Zadania” po pojawieniu się podagenta',
|
||
settingsSubagentDesc: 'Gdy w bieżącej rozmowie pojawi się nowy podagent, automatycznie aktywuj stronę „Zadania”; na szerokich ekranach rozwiń także panel boczny, a na wąskich nie wymuszaj otwarcia pełnoekranowego panelu; wyłącz, aby wybierać stronę ręcznie',
|
||
settingsJobsTitle: 'Automatycznie aktywuj stronę „Zadania” po pojawieniu się nowego zadania w tle',
|
||
settingsJobsDesc: 'Gdy w bieżącej rozmowie pojawi się nowe zadanie w tle, automatycznie aktywuj stronę „Zadania” (akcja jest wyzwalana przez każde nowe zadanie); na szerokich ekranach rozwiń także panel boczny, a na wąskich nie wymuszaj otwarcia pełnoekranowego panelu; wyłącz, aby wybierać stronę ręcznie',
|
||
settingsToolsTitle: 'Wstrzyknij narzędzia terminala dla modelu',
|
||
settingsToolsDesc: 'Po włączeniu model może tworzyć i sterować terminalami panelu bocznego przez 8 narzędzi terminal_* (domyślnie wyłączone)',
|
||
settingsFenceTitle: 'Kontrola ścieżek obszaru roboczego',
|
||
settingsFenceDesc: 'Włączona: funkcje plików paska bocznego sięgają tylko ścieżek w obszarze roboczym sesji (domyślnie); wyłączona: dostępny jest dowolny plik hosta — skrypty strony zyskują ten sam zasięg przez ten czas',
|
||
fenceErrorReason: 'Ta ścieżka jest poza obszarem roboczym sesji i została zablokowana przez kontrolę',
|
||
fenceDisableAction: 'Wyłącz kontrolę obszaru roboczego',
|
||
settingsBottomTerminalTitle: 'Automatycznie otwieraj terminal przy pierwszym rozwinięciu panelu dolnego',
|
||
settingsBottomTerminalDesc: 'Gdy panel dolny jest rozwijany po raz pierwszy w sesji, spróbuj otworzyć nową kartę terminala tam (limit terminali nadal obowiązuje; domyślnie włączone)',
|
||
settingsFontFamilyTitle: 'Krój czcionki terminala',
|
||
settingsFontFamilyDesc: 'Niestandardowy krój czcionki terminala (stos font-family CSS, np. "JetBrains Mono", monospace; puste = krój monospace z motywu)',
|
||
settingsFontFamilyPlaceholder: '"JetBrains Mono", monospace',
|
||
settingsFontSizeTitle: 'Rozmiar czcionki terminala',
|
||
settingsFontSizeDesc: 'Rozmiar czcionki terminala w px (9–32, domyślnie 13)',
|
||
settingsShellTitle: 'Ścieżka powłoki',
|
||
settingsShellDesc: 'Powłoka uruchamiana dla terminali UI i modelu (ścieżka bezwzględna lub nazwa pliku). Puste zachowuje dawną kolejność: yaml config.shell → $SHELL / powłoka logowania / Windows powershell.exe. Dotyczy terminali otwieranych potem',
|
||
settingsShellPlaceholder: 'np. /bin/zsh (puste = auto)',
|
||
settingsShellArgsTitle: 'Argumenty powłoki',
|
||
settingsShellArgsDesc: 'Jawne argumenty powłoki, oddzielone spacjami; niepuste w pełni zastępuje domyślne (zgodnie z kontraktem shellArgs w yaml)',
|
||
settingsShellArgsPlaceholder: 'np. -l (puste = domyślne)',
|
||
settingsTabsTitle: 'Treść panelu bocznego',
|
||
settingsViewersTitle: 'Podglądy plików',
|
||
settingsGeneralTitle: 'Ogólne',
|
||
settingsPopup: 'Ustawienia funkcji',
|
||
settingsViewerCatchAll: 'Zapasowy: dowolny plik',
|
||
viewerMarkdown: 'Markdown',
|
||
viewerCode: 'Kod',
|
||
viewerHtml: 'HTML',
|
||
browser: 'Przeglądarka',
|
||
browserPlaceholder: 'Wpisz adres URL, np. example.com',
|
||
browserGo: 'Przejdź',
|
||
browserBack: 'Wstecz',
|
||
browserForward: 'Naprzód',
|
||
browserStart: 'Wpisz adres URL, aby rozpocząć przeglądanie (tryb piaskownicy)',
|
||
browserBlockedScheme: 'Zablokowano: dozwolone są tylko adresy URL http/https',
|
||
browserBlockedLoopback: 'Zablokowano: nie można tu przeglądać adresów lokalnych i wewnętrznych',
|
||
browserInvalid: 'Nieprawidłowy adres URL',
|
||
htmlNoSandboxWarning: 'Piaskownica wyłączona: ten HTML działa z pełnymi uprawnieniami interfejsu (można przywrócić w ustawieniach)',
|
||
sandboxStatusOn: 'Tryb piaskownicy: włączony · strony nie mogą dostępować danych interfejsu ani plików lokalnych; logowania i ciasteczka firm trzecich mogą nie działać',
|
||
sandboxUnlock: 'Wyłącz tymczasowo (niebezpieczne)',
|
||
sandboxRestore: 'Przywróć piaskownicę',
|
||
settingsHtmlDefaultUnsafeTitle: 'Otwieraj podgląd HTML bez piaskownicy domyślnie (niebezpieczne)',
|
||
settingsHtmlDefaultUnsafeDesc: 'Po włączeniu każdy nowo otwarty podgląd HTML zaczyna się bez piaskownicy (ten sam origin co interfejs — może czytać pliki sesji i wewnętrzne API); pasek stanu nadal pozwala przywrócić piaskownicę',
|
||
settingsHtmlSandboxTitle: 'Wyłącz piaskownicę podglądu HTML (niebezpieczne)',
|
||
settingsHtmlSandboxDesc: 'Po wyłączeniu podglądany HTML działa w tym samym originie co interfejs: może czytać pliki sesji, localStorage i wywoływać wewnętrzne API. Włączaj tylko dla w pełni zaufanych plików',
|
||
settingsBrowserSandboxTitle: 'Wyłącz piaskownicę przeglądarki (niebezpieczne)',
|
||
settingsBrowserSandboxDesc: 'Po wyłączeniu każda odwiedzana strona działa w tym samym originie co interfejs: może czytać dane sesji i podszywać się pod Twoją sesję logowania. Włączaj tylko dla w pełni zaufanych witryn',
|
||
settingsBrowserLoopbackTitle: 'Dozwolone adresy lokalne',
|
||
settingsBrowserLoopbackDesc: 'Rozdzielana przecinkami lista dozwolonych adresów loopback (np. localhost:5174 lub 127.0.0.1:8080), które może odwiedzać przeglądarka paska bocznego; puste domyślnie blokuje wszystkie adresy lokalne. Piaskownica nadal obowiązuje — strony nie mogą odczytywać danych GUI',
|
||
settingsBrowserLoopbackPlaceholder: 'np. localhost:5174, 127.0.0.1:8080',
|
||
browserOpenExternal: 'Otwórz w przeglądarce',
|
||
browserEmbedBlocked: '{host} odmówił osadzenia',
|
||
browserEmbedBlockedDesc: 'Witryna zabrania wyświetlania w innych stronach (X-Frame-Options / frame-ancestors), więc nie może się załadować w panelu bocznym. Otwórz ją bezpośrednio w przeglądarce.',
|
||
browserEmbedAnyway: 'Załaduj mimo to',
|
||
subagent: 'Zadania',
|
||
subagentMainAgent: 'Agent główny',
|
||
subagentEmpty: 'Brak podagentów',
|
||
subagentEmptyDesc: 'Podagenci powołani przez agenta głównego pojawią się tutaj',
|
||
subagentInactive: 'Bezczynny',
|
||
subagentModeOneShot: 'Jednorazowy',
|
||
subagentModeContinuable: 'Kontynuowalny',
|
||
subagentCount: '{count} podagentów',
|
||
subagentCountRunning: '{count} podagentów · {running} działa',
|
||
subagentThinking: 'Myśli…',
|
||
sideChat: 'Czat boczny (beta)',
|
||
sideChatNew: 'Nowy wątek',
|
||
sideChatUntitled: 'Nowy wątek',
|
||
sideChatEmpty: 'Brak rozmów bocznych',
|
||
sideChatEmptyDesc: 'Każda rozmowa boczna to własna karta w pasku kart — dziedziczy kontekst bieżącej sesji i nigdy nie trafia do rozmowy głównej',
|
||
sideChatCreating: 'Tworzenie rozmowy bocznej…',
|
||
sideChatRetry: 'Ponów',
|
||
sideChatThreads: 'Przełącz wątek / nowy',
|
||
sideChatSave: 'Zapisz jako nową sesję',
|
||
sideChatSaveTitle: 'Promuj ten wątek do sesji najwyższego poziomu na głównej liście sesji',
|
||
sideChatSaved: 'Zapisano jako nową sesję',
|
||
sideChatNoTurn: 'Zapis jest dostępny po pierwszej ukończonej turze',
|
||
sideChatPendingDrop: 'Ostatnie niezakończone pytanie następcze nie zostanie uwzględnione w zapisanej sesji',
|
||
sideChatFirstPlaceholder: 'Zadaj pierwsze pytanie — kontekst odziedziczony…',
|
||
sideChatComposerPlaceholder: 'Pytaj dalej…',
|
||
sideChatThinking: 'Drążenie…',
|
||
sideChatThink: 'Myślenie',
|
||
sideChatInjection: 'Kontekst wstrzyknięty',
|
||
sideChatSend: 'Wyślij',
|
||
sideChatCancelTitle: 'Przerwij bieżącą turę (kolejka jest zachowana)',
|
||
sideChatError: 'Błąd czatu bocznego: {message}',
|
||
sideChatTurnUsage: 'Wejście {input} tok · Wyjście {output} tok',
|
||
sideChatBlockCollapse: 'Zwiń',
|
||
sideChatBlockCollapseAria: 'Zwiń',
|
||
sideChatBlockExpand: 'Rozwiń {hidden} wierszy',
|
||
sideChatBlockExpandAria: 'Rozwiń kolejne {hidden} wierszy',
|
||
sideChatBlockSignal: 'Zakończono sygnałem: {signal}',
|
||
sideChatBlockExitCode: 'Kod zakończenia {code}',
|
||
sideChatBlockNoExitCode: "Zakończono bez kodu wyjścia",
|
||
sideChatBlockRunning: 'Uruchomione',
|
||
sideChatBlockFailed: 'Niepowodzenie',
|
||
sideChatBlockDone: 'Zakończono',
|
||
sideChatBlockNoOutput: '(brak wyniku)',
|
||
codeBlockTitle: 'Blok kodu',
|
||
codeBlockWrap: 'Zawijanie wierszy',
|
||
codeBlockUnwrap: 'Bez zawijania wierszy',
|
||
sideChatBlockWindow: '{shown} z {total} wierszy',
|
||
sideChatConnDisconnected: 'Połączenie utracone',
|
||
sideChatConnConnecting: 'Łączenie ponownie…',
|
||
sideChatConnRecovered: 'Połączenie przywrócone',
|
||
sideChatConnReconnectAction: 'Połącz ponownie teraz',
|
||
sideChatConnRestartAction: 'Uruchom połączenie ponownie',
|
||
jobs: 'Zadania w tle',
|
||
jobsCount: '{count} zadań w tle',
|
||
jobsCountRunning: '{count} zadań w tle · {running} działa',
|
||
jobStatusRunning: 'Działa',
|
||
jobStatusStopping: 'Zatrzymywanie',
|
||
jobStatusCompleted: 'Ukończono',
|
||
jobStatusKilled: 'Zabito',
|
||
jobStatusFailed: 'Nie powiodło się',
|
||
jobDurationSeconds: '{seconds}s',
|
||
jobDurationMinutes: '{minutes}m {seconds}s',
|
||
jobDurationHours: '{hours}g {minutes}m',
|
||
jobViewOutput: 'Pokaż wyjście',
|
||
jobNoOutput: 'Brak wyjścia',
|
||
jobNotReadYet: 'Oczekiwanie, aż model odczyta to zadanie; wyjście pojawi się tutaj, gdy model uruchomi job_output',
|
||
jobOutputTruncated: 'Wyjście skrócone',
|
||
jobOutputError: 'Ładowanie wyjścia nie powiodło się',
|
||
jobKill: 'Zabij',
|
||
jobKillConfirm: 'Kliknij ponownie, aby potwierdzić zabicie',
|
||
jobKillError: 'Zabicie nie powiodło się',
|
||
tasksViewGraph: 'Graf przepływu pracy',
|
||
tasksViewTree: 'Drzewo',
|
||
tasksViewSwitchToGraph: 'Przełącz na graf przepływu pracy',
|
||
tasksViewSwitchToTree: 'Przełącz na drzewo',
|
||
settingsViewModeTitle: 'Domyślny widok strony zadań',
|
||
settingsViewModeDesc: 'Jak strona zadań renderuje się po otwarciu (przełącznik na stronie nadal działa doraźnie)',
|
||
settingsViewModeGraph: 'Graf przepływu pracy',
|
||
settingsViewModeGraphDesc: 'Warstwowy graf węzłów ze zoomowaniem i przesuwaniem',
|
||
settingsViewModeTree: 'Drzewo',
|
||
settingsViewModeTreeDesc: 'Klasyczne drzewo wcięć, nawigowalne z klawiatury',
|
||
tasksFoldCompleted: '✓ {count} ukończonych',
|
||
tasksFoldOne: 'Zwiń do ukończonych',
|
||
tasksFoldExpand: 'Rozwiń ukończone węzły',
|
||
tasksFoldCollapse: 'Zwiń ukończone węzły',
|
||
tasksZoomIn: 'Przybliż',
|
||
tasksZoomOut: 'Oddal',
|
||
tasksZoomFit: 'Dopasuj do kanwy',
|
||
tasksNodeJump: 'Otwórz transkrypcję',
|
||
tasksNodeDetail: 'Szczegóły węzła',
|
||
workflowRun: 'Przepływ pracy',
|
||
tasksNodeState: 'Stan',
|
||
tasksNodeMode: 'Tryb',
|
||
tasksNodeModel: 'Model',
|
||
tasksNodeTeamRole: 'Rola w zespole',
|
||
tasksNodeActivity: 'Ostatnia aktywność',
|
||
tasksStateRunning: 'Działa',
|
||
tasksStateIdle: 'Gotowe',
|
||
tasksStateDone: 'Ukończone',
|
||
tasksStateError: 'Błąd',
|
||
tasksKindSubagent: 'Podagent',
|
||
tasksKindTeammate: 'Członek zespołu',
|
||
tasksKindWorkflow: 'Przepływ pracy',
|
||
teamBoard: 'Tablica zadań zespołu',
|
||
teamChip: 'Zespół {members} członków · {tasks} zadań',
|
||
teamTasksEmpty: 'Brak wspólnych zadań',
|
||
teamTaskCreate: 'Nowe zadanie',
|
||
teamTaskSubject: 'Temat',
|
||
teamTaskDescription: 'Opis',
|
||
teamTaskOwner: 'Odpowiedzialny',
|
||
teamTaskUnowned: 'Nieprzypisane',
|
||
teamTaskPending: 'Do zrobienia',
|
||
teamTaskInProgress: 'W toku',
|
||
teamTaskCompleted: 'Ukończone',
|
||
teamTaskBlocked: 'Zablokowane',
|
||
teamTaskComplete: 'Ukończ',
|
||
teamTaskReopen: 'Otwórz ponownie',
|
||
teamTaskDelete: 'Usuń',
|
||
teamTaskDeleteConfirm: 'Potwierdź usunięcie',
|
||
teamTaskEdit: 'Edytuj',
|
||
teamTaskSave: 'Zapisz',
|
||
teamTaskCancel: 'Anuluj',
|
||
teamTaskConflict: 'Zadanie zostało zmienione przez kogoś innego; odświeżono',
|
||
teamTaskError: 'Operacja nie powiodła się: {message}',
|
||
teamTaskDeleted: 'Usunięte',
|
||
teamTaskActions: 'Akcje zadania',
|
||
teamTaskDetail: 'Szczegóły zadania',
|
||
teamTaskNoDescription: 'Brak opisu — kliknij „Edytuj”, aby dodać',
|
||
teamTaskBlockedBy: 'Zablokowane przez',
|
||
teamTaskSubjectPlaceholder: 'Opisz pracę w jednym zdaniu',
|
||
teamTaskDescriptionPlaceholder: 'Dodatkowe informacje (opcjonalnie)',
|
||
teamFilterAll: 'Wszystko',
|
||
tasksNodeTasks: 'Wspólne zadania',
|
||
jobCopyOutput: 'Kopiuj wyjście',
|
||
jobCopied: 'Skopiowano',
|
||
jobFollowTail: 'Śledź najnowsze',
|
||
jobDragHint: 'Przeciągnij, aby przenieść',
|
||
workflowRunning: 'W toku',
|
||
workflowCompleted: 'Ukończony',
|
||
workflowCancelled: 'Anulowany',
|
||
workflowFailed: 'Niepowodzenie',
|
||
workflowPhaseUnnamed: 'Faza bez nazwy',
|
||
workflowMembers: '{done}/{total} członków',
|
||
jobsAutoCollapsed: 'Automatycznie zwinięto (wiele agentów)',
|
||
catalogLoadFailed: 'Nie udało się załadować {count} gałęzi',
|
||
addPluginsTabCard: 'Dodaj wtyczki kart',
|
||
addPluginsTabCardDesc: 'Zarejestruj nową stronę panelu bocznego',
|
||
addPluginsViewerCard: 'Dodaj wtyczki podglądu',
|
||
addPluginsViewerCardDesc: 'Zarejestruj podgląd typu pliku',
|
||
addPluginsTabDesc: 'Strony panelu bocznego (karty) mogą być rozszerzane przez wtyczki. Wtyczki rejestrują się przez usługę ctx.betterSidebar; kliknięcie „Zainstaluj” kopiuje polecenie instalacji — wklej je do terminala tam, gdzie żyje Twój profil DSH, i uruchom.',
|
||
addPluginsViewerDesc: 'Podglądy plików mogą być rozszerzane przez wtyczki. Wtyczki rejestrują się przez usługę ctx.betterSidebar; kliknięcie „Zainstaluj” kopiuje polecenie instalacji — wklej je do terminala tam, gdzie żyje Twój profil DSH, i uruchom.',
|
||
addPluginsBrowseMore: 'Przeglądaj więcej wtyczek na GitHub (topic: dsh-better-sidebar)',
|
||
addPluginsSearch: 'Szukaj po nazwie lub opisie wtyczki…',
|
||
addPluginsNoMatch: 'Brak pasujących wtyczek',
|
||
addPluginsRecommended: 'Zalecane wtyczki',
|
||
addPluginsEmpty: 'Brak wyselekcjonowanych wtyczek — opublikuj swoją pod tematem na GitHub',
|
||
openPlugin: 'Otwórz',
|
||
copyInstall: 'Kopiuj polecenie instalacji',
|
||
pluginOfficeDesc: 'Podgląd pakietu Office (.docx / .xlsx / .pptx) dla edytora better-sidebar, utrzymujący ciężkie biblioteki renderujące Office poza rdzeniem głównego pakietu',
|
||
pluginFlowglassDesc: 'Wykres przepływu sesji na żywo: trzy tory dla użytkownika, asystenta i wywołań narzędzi, z grupami równoległymi, gałęziami podagentów, drążeniem i statusem na żywo; rejestruje natywną kartę Flowglass po zainstalowaniu better-sidebar, z fallbackiem do samodzielnej szuflady',
|
||
pluginGitForgeDesc: 'Karta Git Forge: biblioteka kont GitHub/Gitea (i innych forges) + autoryzacja per projekt + twarda polityka push; tokeny zostają w lokalnych sekretach (nigdy w kontekście modelu); narzędzie GitForge tylko do odczytu i agentowy helper poświadczeń HTTPS',
|
||
pluginGithubWorkbenchDesc: 'Karta GitHub Workbench: drzewo zdalnego repozytorium + Issues / Pull requests / Actions z pełną obsługą zapisu — tworzenie issue/PR, komentowanie, edycja, zamykanie/ponowne otwieranie, scalanie squash·merge·rebase (mocne potwierdzenie), ponowne uruchomienie/anulowanie CI; przełącznik repozytoriów automatycznie wyświetla dostępne repozytoria i wyszukuje publiczne; bez better-sidebar następuje przejście na samodzielny panel po prawej stronie',
|
||
pluginMdExportDesc: 'Dodaje przycisk „Eksportuj" do paska narzędzi Markdown w better-sidebar: jednym kliknięciem renderuje bieżący .md do samodzielnego HTML (tabele/bloki kodu/diagramy Mermaid w treści, układ zgodny z motywem podglądu) i zapisuje obok pliku .md albo eksportuje do PDF przez okno drukowania',
|
||
pluginCodeNavDesc: 'Nawigacja podglądu kodu: rozpoznaje język po typie pliku i koloruje składnię, konspekt symboli (filtry klas/metod/zmiennych + skok jednym kliknięciem) oraz wyszukiwanie w pliku (podświetlanie wszystkich trafień, poprzedni/następny, rozróżnianie wielkości liter) — przejmuje podgląd plików kodu w edytorze better-sidebar',
|
||
pluginSuhuangScrollDesc: 'Łączy lokalny Suhuang Scroll Runtime z ustawieniami DSH i better-sidebar, zapewniając konfigurację modelu, test połączenia i sterowanie ciągłym ocenianiem; wymaga Suhuang Scroll Runtime i dsh-better-sidebar',
|
||
pluginBetterOverleafDesc: 'Karta Overleaf dla better-sidebar: logowanie bezpośrednio przez przeglądarkę CDP (obsługa Chromium innych firm), lista/przełączanie projektów, lokalne kopie lustrzane git w <workspace>/overleaf/, dwukierunkowa synchronizacja git z awaryjnym API tylko do odczytu oraz podgląd plików przez warsztat panelu bocznego',
|
||
pluginGitRemotesDesc: 'Karta Git Remotes: gałąź/nadrzędne/ahead-behind, fetch (z opcjonalnym prune), ff-only pull i push dopiero po potwierdzeniu w karcie. Nie zastępuje wbudowanej karty Git stage/commit i nie oferuje force-push ani narzędzia auto-push modelu',
|
||
pluginSentinelDesc: 'Budzenie agenta sterowane warunkami: czujniki plików/procesów/portów/HTTP/poleceń/webhooków wybudzają uśpione sesje, gdy warunek zajdzie; rejestruje kartę „Sentinel” z ogólnoserwerową tabelą obserwacji',
|
||
pluginServerDeckDesc: 'Pulpit kart serwerów: jedna karta na host z statusem online, systemem, czasem pracy, użyciem CPU/RAM/dysku i opóźnieniem; kliknięcie karty otwiera interaktywny terminal xterm.js; import ~/.ssh/config jednym kliknięciem (aliasy hostingów Git są pomijane). Rejestruje natywną kartę „Serwery”, gdy better-sidebar jest zainstalowany, w przeciwnym razie zachowuje niezależny panel szuflady',
|
||
pluginSidebarQaDesc: 'Wybierz-i-zapytaj: Zaznacz tekst rozmowy → zapytaj w prawym panelu → niezależna sesja pytań następczych (❓) w tym samym obszarze roboczym; szybki model bez myślenia kompresuje główny kontekst i wstrzykuje go z cytatem, nie przerywając głównej rozmowy; pytania następcze mogą zagnieżdżać się, kontynuować i być archiwizowane',
|
||
pluginSidenoteDesc: 'Czat boczny w stylu Codex + adnotacje z zaznaczenia: fork bieżącej sesji do trwałego panelu bocznego (archiwizowany poza listą sesji, wiele instancji, komenda /side, przeżywa przeładowanie, model podąża za sesją główną); zaznacz tekst assistant → numerowany badge + edytor notatek → chip "N adnotacji" dołączany do następnej wiadomości, albo od razu zapytaj w czacie bocznym',
|
||
pluginSshTunnelDesc: 'Karta SSH Tunnel: spis wielu hostów + autoryzacja per projekt + klucze trzymane lokalnie; narzędzie modelu SSHManager (exec/SFTP/strategie sesji); centralny interaktywny terminal i dwupanelowy SFTP',
|
||
pluginTurnReviewDesc: 'Ludzka bramka na diffie „tej właśnie tury”: Approve / Request changes per ścieżka z opcjonalnym komentarzem; ścieżki pogrupowane wg sesji głównej / podagenta / nieprzypisane; wbudowany diff migawka-początku-tury vs teraz, zanim zdecydujesz. Bez forka, bez /rewind',
|
||
pluginVideoPreviewDesc: 'Wbudowany podgląd plików wideo (.mp4/.webm/.mov/.mkv/.avi itp.) w edytorze better-sidebar, wspierany przez dedykowaną trasę hosta /video z obsługą HTTP Range (206) — przewijanie działa, a pliki nie są ograniczane przez mediaLimit 20 MB',
|
||
pluginDocsPanelDesc: 'Globalne dokumenty w panelu bocznym DSH: globalne notatki Markdown, czytelne z dowolnego obszaru roboczego — lista z kliknięciem, kontur z przejściami, otwieranie w Chrome / VS Code i przyciski kopiowania kodu; katalog konfigurowalny (domyślnie ~/.dsh/docs)',
|
||
pluginEgoBrowserDesc: 'Przeglądarka agenta dla DeepSeek Harness: 32 narzędzia ego_* sterują prawdziwym Chromium; natywna karta «ego browser» na pasku bocznym pokazuje na żywo każdą stronę odwiedzaną przez agenta — możesz klikać, przeciągać i pisać, aby przejąć kontrolę. Karta rejestruje się automatycznie, gdy better-sidebar jest zainstalowany; w przeciwnym razie pływający dymek',
|
||
pluginBilingualReaderDesc: 'Czytaj PDF-y w panelu bocznym DSH: natywny podgląd PDF, zaznacz tekst, aby przetłumaczyć go LLM-em, z kontekstem i całkowicie izolowany od głównej rozmowy',
|
||
changesRedactOn: "Redakcja włączona: tajne dane pokazywane jako [REDACTED]; kliknij, aby wyłączyć (na własne ryzyko)",
|
||
changesRedactOff: "Redakcja wyłączona: treść pokazywana bez zmian; kliknij, aby włączyć",
|
||
changesRedactOnLabel: "Redakcja",
|
||
changesRedactOffLabel: "Bez redakcji",
|
||
changesRedactBanner: "Zredagowano",
|
||
pluginSentinelName: 'dsh-sentinel System wybudzania',
|
||
pluginEgoBrowserName: 'ego-browser Przeglądarka agenta',
|
||
pluginBetterOverleafName: 'dsh-better-overleaf Karta Overleaf',
|
||
pluginDocsPanelName: 'dsh-docs-panel Dokumenty globalne',
|
||
pluginFlowglassName: 'dsh-flowglass Flowglass',
|
||
pluginGitForgeName: 'dsh-git-forge Dane uwierzytelniające Git',
|
||
pluginGitRemotesName: 'dsh-git-remotes Zdalne repozytoria Git',
|
||
pluginGithubWorkbenchName: 'dsh-github-workbench Warsztat GitHub',
|
||
pluginSidebarQaName: 'dsh-sidebar-qa Zaznacz i zapytaj',
|
||
pluginSidenoteName: 'dsh-sidenote Czat boczny',
|
||
pluginServerDeckName: 'dsh-server-deck Panel serwerów',
|
||
pluginSuhuangScrollName: 'dsh-suhuang-scroll Suhuang Scroll',
|
||
pluginSshTunnelName: 'dsh-ssh-tunnel Tunel SSH',
|
||
pluginTurnReviewName: 'dsh-turn-review Rewizja tury',
|
||
pluginBilingualReaderName: 'dsh-bilingual-reader Czytnik dwujęzyczny',
|
||
pluginOfficeName: 'Podgląd Office',
|
||
pluginMdExportName: 'Eksport Markdown',
|
||
pluginCodeNavName: 'Nawigator podglądu kodu',
|
||
pluginVideoPreviewName: 'Podgląd wideo',
|
||
presetDshDesktopDesc: 'Tryb zaawansowany Electron (bez ramki): macOS rezerwuje 20px u góry; Windows bez WCO rezerwuje 32px na pasek tytułu',
|
||
}
|