mirror of
https://github.com/Kilo-Org/kilocode.git
synced 2026-09-19 10:02:04 +08:00
Merge branch 'main' into catrielmuller/kilo-vscode-migration
This commit is contained in:
@@ -4,3 +4,4 @@
|
||||
|
||||
# Visual regression baseline snapshots
|
||||
packages/kilo-ui/tests/**/*.png filter=lfs diff=lfs merge=lfs -text
|
||||
packages/kilo-vscode/tests/**/*.png filter=lfs diff=lfs merge=lfs -text
|
||||
|
||||
@@ -7,6 +7,9 @@ on:
|
||||
- "packages/ui/**"
|
||||
- "packages/util/**"
|
||||
- "packages/sdk/js/**"
|
||||
- "packages/kilo-vscode/webview-ui/**"
|
||||
- "packages/kilo-vscode/.storybook/**"
|
||||
- "packages/kilo-vscode/tests/visual-regression*"
|
||||
- ".github/workflows/visual-regression.yml"
|
||||
|
||||
jobs:
|
||||
@@ -101,3 +104,95 @@ jobs:
|
||||
name: visual-regression-results
|
||||
path: packages/kilo-ui/test-results/
|
||||
retention-days: 7
|
||||
|
||||
visual-regression-vscode:
|
||||
name: Visual Regression (kilo-vscode webview)
|
||||
runs-on: blacksmith-4vcpu-ubuntu-2404
|
||||
timeout-minutes: 15
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
lfs: true
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
ref: ${{ github.head_ref }}
|
||||
|
||||
- name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v2
|
||||
with:
|
||||
bun-version: latest
|
||||
|
||||
- name: Cache Bun modules
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: ~/.bun/install/cache
|
||||
key: bun-${{ hashFiles('bun.lock') }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: bun install
|
||||
|
||||
- name: Cache Playwright browsers
|
||||
id: playwright-cache-vscode
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: ~/.cache/ms-playwright
|
||||
key: playwright-vscode-${{ hashFiles('packages/kilo-vscode/package.json') }}
|
||||
|
||||
- name: Install Playwright browsers
|
||||
if: steps.playwright-cache-vscode.outputs.cache-hit != 'true'
|
||||
run: bunx playwright install chromium
|
||||
working-directory: packages/kilo-vscode
|
||||
|
||||
- name: Install Playwright system deps
|
||||
run: bunx playwright install-deps chromium
|
||||
working-directory: packages/kilo-vscode
|
||||
|
||||
- name: Cache Storybook build
|
||||
id: storybook-cache-vscode
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: packages/kilo-vscode/storybook-static
|
||||
key: storybook-vscode-${{ hashFiles('packages/kilo-vscode/webview-ui/src/**', 'packages/kilo-vscode/.storybook/**', 'packages/kilo-ui/src/**', 'packages/ui/src/**', 'packages/kilo-vscode/package.json') }}
|
||||
|
||||
- name: Build Storybook
|
||||
if: steps.storybook-cache-vscode.outputs.cache-hit != 'true'
|
||||
run: bun run build-storybook
|
||||
working-directory: packages/kilo-vscode
|
||||
|
||||
- name: Generate baselines for new/missing stories
|
||||
run: bun run test:visual:update
|
||||
working-directory: packages/kilo-vscode
|
||||
env:
|
||||
CI: true
|
||||
PLAYWRIGHT_WORKERS: "4"
|
||||
|
||||
- name: Commit and push new baselines (if any)
|
||||
id: commit-baselines-vscode
|
||||
run: |
|
||||
git config user.name "github-actions[bot]"
|
||||
git config user.email "github-actions[bot]@users.noreply.github.com"
|
||||
git add packages/kilo-vscode/tests/visual-regression.spec.ts-snapshots/
|
||||
if git diff --cached --quiet; then
|
||||
echo "No new baselines — nothing to commit."
|
||||
echo "changed=false" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
git commit -m "chore: update kilo-vscode visual regression baselines"
|
||||
git lfs push --all origin
|
||||
git push
|
||||
echo "changed=true" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
- name: Fail if baselines changed
|
||||
if: steps.commit-baselines-vscode.outputs.changed == 'true'
|
||||
run: |
|
||||
echo "::error::Visual regression baselines changed. New baselines have been committed to the branch. Please pull and review."
|
||||
exit 1
|
||||
|
||||
- name: Upload test results on failure
|
||||
if: failure()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: visual-regression-vscode-results
|
||||
path: packages/kilo-vscode/test-results/
|
||||
retention-days: 7
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
},
|
||||
"packages/app": {
|
||||
"name": "@opencode-ai/app",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@kilocode/kilo-i18n": "workspace:*",
|
||||
"@kilocode/kilo-ui": "workspace:*",
|
||||
@@ -77,7 +77,7 @@
|
||||
},
|
||||
"packages/desktop": {
|
||||
"name": "@opencode-ai/desktop",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@opencode-ai/app": "workspace:*",
|
||||
"@opencode-ai/ui": "workspace:*",
|
||||
@@ -110,7 +110,7 @@
|
||||
},
|
||||
"packages/kilo-docs": {
|
||||
"name": "@kilocode/kilo-docs",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@docsearch/css": "^4",
|
||||
"@docsearch/js": "^4",
|
||||
@@ -139,7 +139,7 @@
|
||||
},
|
||||
"packages/kilo-gateway": {
|
||||
"name": "@kilocode/kilo-gateway",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@clack/prompts": "1.0.0-alpha.1",
|
||||
"@kilocode/plugin": "workspace:*",
|
||||
@@ -171,7 +171,7 @@
|
||||
},
|
||||
"packages/kilo-i18n": {
|
||||
"name": "@kilocode/kilo-i18n",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"devDependencies": {
|
||||
"@tsconfig/node22": "catalog:",
|
||||
"@types/bun": "catalog:",
|
||||
@@ -181,7 +181,7 @@
|
||||
},
|
||||
"packages/kilo-telemetry": {
|
||||
"name": "@kilocode/kilo-telemetry",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@kilocode/kilo-gateway": "workspace:*",
|
||||
"@opentelemetry/api": "1.9.0",
|
||||
@@ -201,7 +201,7 @@
|
||||
},
|
||||
"packages/kilo-ui": {
|
||||
"name": "@kilocode/kilo-ui",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@kobalte/core": "0.13.11",
|
||||
"lucide-solid": "0.576.0",
|
||||
@@ -226,7 +226,7 @@
|
||||
},
|
||||
"packages/kilo-vscode": {
|
||||
"name": "kilo-code",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@anthropic-ai/sdk": "^0.39.0",
|
||||
"@kilocode/kilo-i18n": "workspace:*",
|
||||
@@ -249,6 +249,8 @@
|
||||
"zod": "^3.24.2",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "1.58.2",
|
||||
"@storybook/addon-docs": "10.2.10",
|
||||
"@types/diff": "^6.0.0",
|
||||
"@types/mocha": "^10.0.10",
|
||||
"@types/node": "22.x",
|
||||
@@ -263,14 +265,18 @@
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"prettier": "^3.8.1",
|
||||
"qrcode": "^1.5.4",
|
||||
"storybook": "10.2.10",
|
||||
"storybook-solidjs-vite": "10.0.9",
|
||||
"ts-morph": "27.0.2",
|
||||
"typescript": "^5.9.3",
|
||||
"typescript-eslint": "^8.54.0",
|
||||
"vite": "7.3.1",
|
||||
"vite-plugin-solid": "2.11.10",
|
||||
},
|
||||
},
|
||||
"packages/opencode": {
|
||||
"name": "@kilocode/cli",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"bin": {
|
||||
"opencode": "./bin/opencode",
|
||||
},
|
||||
@@ -387,7 +393,7 @@
|
||||
},
|
||||
"packages/plugin": {
|
||||
"name": "@kilocode/plugin",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@kilocode/sdk": "workspace:*",
|
||||
"zod": "catalog:",
|
||||
@@ -401,14 +407,14 @@
|
||||
},
|
||||
"packages/script": {
|
||||
"name": "@opencode-ai/script",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"devDependencies": {
|
||||
"@types/bun": "catalog:",
|
||||
},
|
||||
},
|
||||
"packages/sdk/js": {
|
||||
"name": "@kilocode/sdk",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"devDependencies": {
|
||||
"@hey-api/openapi-ts": "0.90.10",
|
||||
"@tsconfig/node22": "catalog:",
|
||||
@@ -419,7 +425,7 @@
|
||||
},
|
||||
"packages/ui": {
|
||||
"name": "@opencode-ai/ui",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"@kilocode/sdk": "workspace:*",
|
||||
"@kobalte/core": "catalog:",
|
||||
@@ -461,7 +467,7 @@
|
||||
},
|
||||
"packages/util": {
|
||||
"name": "@opencode-ai/util",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {
|
||||
"zod": "catalog:",
|
||||
},
|
||||
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"nodeModules": {
|
||||
"x86_64-linux": "sha256-NrbWpaXEMxKRZVMwSfn0Zt/iJ+/rAgdkeu8saQtPJWg=",
|
||||
"aarch64-linux": "sha256-qwV7BBySUF2NpgFpPrYUAyEcOKOEHu0Su9HiDIoGlYk=",
|
||||
"aarch64-darwin": "sha256-eHGuncX+swJvE3UNKCl6yy9AeWHMkpZK209oEsCOjnc=",
|
||||
"x86_64-darwin": "sha256-jMqI1kJ/QVzPaOO8cVmm5dh5MFYSJ7YMkyAifgBO9KA="
|
||||
"x86_64-linux": "sha256-7YoMJRkLfE+49GuItkoTLj1nk8CxLAHGIdRtH2L5n4w=",
|
||||
"aarch64-linux": "sha256-A+JUa7PI+ICd1+xCzQM11zZQMzsOWYFwULTo7sk4t5Q=",
|
||||
"aarch64-darwin": "sha256-Pbh4id/Crsy6s6J2s7QlbDnUwtsdUXGjt+K5qz7o1mU=",
|
||||
"x86_64-darwin": "sha256-hSdwk2LNlSr25p4YKb5Yh4K3L0CazFQ+SOXIfFY0jCY="
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -107,6 +107,6 @@
|
||||
"@openrouter/ai-sdk-provider@1.5.4": "patches/@openrouter%2Fai-sdk-provider@1.5.4.patch",
|
||||
"ghostty-web@0.3.0": "patches/ghostty-web@0.3.0.patch"
|
||||
},
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"peerDependencies": {}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@opencode-ai/app",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"description": "",
|
||||
"type": "module",
|
||||
"exports": {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@opencode-ai/desktop",
|
||||
"private": true,
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
id = "kilo"
|
||||
name = "Kilo"
|
||||
description = "The open source coding agent."
|
||||
version = "7.0.36"
|
||||
version = "7.0.37"
|
||||
schema_version = 1
|
||||
authors = ["Anomaly"]
|
||||
repository = "https://github.com/Kilo-Org/kilocode"
|
||||
@@ -11,26 +11,26 @@ name = "Kilo"
|
||||
icon = "./icons/opencode.svg"
|
||||
|
||||
[agent_servers.opencode.targets.darwin-aarch64]
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.36/opencode-darwin-arm64.zip"
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.37/opencode-darwin-arm64.zip"
|
||||
cmd = "./opencode"
|
||||
args = ["acp"]
|
||||
|
||||
[agent_servers.opencode.targets.darwin-x86_64]
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.36/opencode-darwin-x64.zip"
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.37/opencode-darwin-x64.zip"
|
||||
cmd = "./opencode"
|
||||
args = ["acp"]
|
||||
|
||||
[agent_servers.opencode.targets.linux-aarch64]
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.36/opencode-linux-arm64.tar.gz"
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.37/opencode-linux-arm64.tar.gz"
|
||||
cmd = "./opencode"
|
||||
args = ["acp"]
|
||||
|
||||
[agent_servers.opencode.targets.linux-x86_64]
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.36/opencode-linux-x64.tar.gz"
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.37/opencode-linux-x64.tar.gz"
|
||||
cmd = "./opencode"
|
||||
args = ["acp"]
|
||||
|
||||
[agent_servers.opencode.targets.windows-x86_64]
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.36/opencode-windows-x64.zip"
|
||||
archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.0.37/opencode-windows-x64.zip"
|
||||
cmd = "./opencode.exe"
|
||||
args = ["acp"]
|
||||
|
||||
@@ -529,12 +529,12 @@ export function TopNav({ onMobileMenuToggle, isMobileMenuOpen = false, showMobil
|
||||
}
|
||||
|
||||
.announcement-banner {
|
||||
background: #1a1a18;
|
||||
color: #a3a3a2;
|
||||
background: var(--bg-secondary);
|
||||
color: var(--text-color);
|
||||
padding: 0.5rem 1rem;
|
||||
text-align: center;
|
||||
font-size: 0.875rem;
|
||||
border-bottom: 1px solid #3f3f3f;
|
||||
border-bottom: 1px solid var(--border-color);
|
||||
}
|
||||
|
||||
.announcement-banner p {
|
||||
@@ -542,13 +542,13 @@ export function TopNav({ onMobileMenuToggle, isMobileMenuOpen = false, showMobil
|
||||
}
|
||||
|
||||
.announcement-banner :global(a) {
|
||||
color: #f8f674;
|
||||
color: var(--accent-color);
|
||||
text-decoration: underline;
|
||||
text-underline-offset: 2px;
|
||||
}
|
||||
|
||||
.announcement-banner :global(a:hover) {
|
||||
color: #ffff8d;
|
||||
color: var(--accent-hover);
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@kilocode/kilo-docs",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev --webpack --port 3002",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"name": "@kilocode/kilo-gateway",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"description": "Unified Kilo Gateway package for OpenCode - authentication, provider, and API integration",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"name": "@kilocode/kilo-i18n",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"description": "Kilo-specific i18n translations and overrides",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"name": "@kilocode/kilo-telemetry",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"description": "Telemetry for Kilo CLI - PostHog analytics integration",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@kilocode/kilo-ui",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"exports": {
|
||||
|
||||
@@ -11,6 +11,10 @@
|
||||
[data-slot="text-part-copy-wrapper"] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
[data-slot="text-part-copy-wrapper"][data-is-turn-copy] {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
/* Prevent long title/path from hiding the collapsible expand arrow */
|
||||
|
||||
+2
-2
@@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6c67c7cc21cd458c632228bdcee310615fae82c6d4c76e4d1170fa00224a9ac3
|
||||
size 29215
|
||||
oid sha256:1de30d219cd299acf26c9fe473c00f18cf057297db2e9b1ae44fb3116b0392f0
|
||||
size 31305
|
||||
|
||||
+2
-2
@@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6c67c7cc21cd458c632228bdcee310615fae82c6d4c76e4d1170fa00224a9ac3
|
||||
size 29215
|
||||
oid sha256:1de30d219cd299acf26c9fe473c00f18cf057297db2e9b1ae44fb3116b0392f0
|
||||
size 31305
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
bin/
|
||||
out/
|
||||
.vscode-test/
|
||||
.vscode-test/
|
||||
storybook-static/
|
||||
test-results/
|
||||
@@ -0,0 +1,27 @@
|
||||
import type { StorybookConfig } from "storybook-solidjs-vite"
|
||||
import { mergeConfig } from "vite"
|
||||
import solidPlugin from "vite-plugin-solid"
|
||||
|
||||
const config: StorybookConfig = {
|
||||
framework: "storybook-solidjs-vite",
|
||||
stories: ["../webview-ui/src/stories/**/*.stories.@(ts|tsx)"],
|
||||
addons: ["@storybook/addon-docs"],
|
||||
refs: {},
|
||||
viteFinal: async (config) => {
|
||||
return mergeConfig(config, {
|
||||
plugins: [solidPlugin()],
|
||||
resolve: {
|
||||
conditions: ["browser", "solid", "module", "import"],
|
||||
},
|
||||
esbuild: {
|
||||
jsxImportSource: "solid-js",
|
||||
jsx: "automatic",
|
||||
},
|
||||
worker: {
|
||||
format: "es",
|
||||
},
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
export default config
|
||||
@@ -0,0 +1,84 @@
|
||||
/** @jsxImportSource solid-js */
|
||||
import type { Preview, SolidRenderer } from "storybook-solidjs-vite"
|
||||
import type { DecoratorFunction } from "storybook/internal/types"
|
||||
// Reference kilo-ui stories helpers directly — not exported via package.json
|
||||
import { applyKiloTheme, applyVscodeTheme, clearVscodeTheme } from "../../kilo-ui/src/stories/theme-decorator"
|
||||
import "../../kilo-ui/.storybook/fonts.css"
|
||||
import "@kilocode/kilo-ui/styles"
|
||||
import "../webview-ui/src/styles/chat.css"
|
||||
|
||||
const themeDecorator: DecoratorFunction<SolidRenderer> = (Story, context) => {
|
||||
const themeId = (context.globals["theme"] as string) ?? "kilo-vscode"
|
||||
const vscodeThemeId = (context.globals["vscodeTheme"] as string) ?? "dark-modern"
|
||||
|
||||
const colorScheme = (() => {
|
||||
if (themeId === "kilo-vscode") return applyVscodeTheme(vscodeThemeId)
|
||||
clearVscodeTheme()
|
||||
return (context.globals["colorScheme"] as "light" | "dark") ?? "dark"
|
||||
})()
|
||||
|
||||
applyKiloTheme(themeId, colorScheme)
|
||||
document.body.style.background = "var(--background-base)"
|
||||
document.body.style.color = "var(--text-base)"
|
||||
return Story()
|
||||
}
|
||||
|
||||
const preview: Preview = {
|
||||
parameters: {
|
||||
controls: {
|
||||
matchers: {
|
||||
color: /(background|color)$/i,
|
||||
date: /Date$/i,
|
||||
},
|
||||
},
|
||||
layout: "fullscreen",
|
||||
},
|
||||
decorators: [themeDecorator],
|
||||
globalTypes: {
|
||||
theme: {
|
||||
description: "Theme",
|
||||
toolbar: {
|
||||
title: "Theme",
|
||||
icon: "paintbrush",
|
||||
items: [
|
||||
{ value: "kilo-vscode", title: "Kilo VSCode" },
|
||||
{ value: "kilo", title: "Kilo" },
|
||||
],
|
||||
dynamicTitle: true,
|
||||
},
|
||||
},
|
||||
colorScheme: {
|
||||
description: "Color Scheme",
|
||||
toolbar: {
|
||||
title: "Color Scheme",
|
||||
icon: "circlehollow",
|
||||
items: [
|
||||
{ value: "dark", title: "Dark", icon: "moon" },
|
||||
{ value: "light", title: "Light", icon: "sun" },
|
||||
],
|
||||
dynamicTitle: true,
|
||||
},
|
||||
},
|
||||
vscodeTheme: {
|
||||
description: "VSCode Theme",
|
||||
toolbar: {
|
||||
title: "VSCode Theme",
|
||||
icon: "browser",
|
||||
items: [
|
||||
{ value: "dark-modern", title: "Dark Modern (default)" },
|
||||
{ value: "dark-plus", title: "Dark+" },
|
||||
{ value: "light-modern", title: "Light Modern" },
|
||||
{ value: "hc-black", title: "High Contrast" },
|
||||
],
|
||||
dynamicTitle: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
initialGlobals: {
|
||||
theme: "kilo-vscode",
|
||||
colorScheme: "dark",
|
||||
vscodeTheme: "dark-modern",
|
||||
},
|
||||
}
|
||||
|
||||
export default preview
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"extends": "../webview-ui/tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"jsx": "preserve",
|
||||
"jsxImportSource": "solid-js"
|
||||
},
|
||||
"include": ["./**/*", "../webview-ui/src/**/*"]
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "kilo-code",
|
||||
"displayName": "Kilo Code: AI Coding Agent, Copilot, and Autocomplete",
|
||||
"description": "Open Source AI coding agent that generates code from natural language, automates tasks, and runs terminal commands. Features inline autocomplete, browser automation, automated refactoring, and custom modes for planning, coding, and debugging. Supports 500+ AI models including Claude (Anthropic), Gemini, Grok, GPT, Codex and GLM.",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"icon": "assets/icons/logo-outline-black.png",
|
||||
"galleryBanner": {
|
||||
"color": "#FFFFFF",
|
||||
@@ -677,9 +677,15 @@
|
||||
"lint": "eslint src",
|
||||
"test": "vscode-test",
|
||||
"test:unit": "bun test tests/unit/",
|
||||
"rebuild-sdk": "bun run --cwd ../sdk/js build"
|
||||
"rebuild-sdk": "bun run --cwd ../sdk/js build",
|
||||
"storybook": "storybook dev -p 6007",
|
||||
"build-storybook": "storybook build -o storybook-static",
|
||||
"test:visual": "playwright test",
|
||||
"test:visual:update": "playwright test --update-snapshots"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "1.58.2",
|
||||
"@storybook/addon-docs": "10.2.10",
|
||||
"@types/diff": "^6.0.0",
|
||||
"@types/mocha": "^10.0.10",
|
||||
"@types/node": "22.x",
|
||||
@@ -693,9 +699,13 @@
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"prettier": "^3.8.1",
|
||||
"qrcode": "^1.5.4",
|
||||
"storybook": "10.2.10",
|
||||
"storybook-solidjs-vite": "10.0.9",
|
||||
"ts-morph": "27.0.2",
|
||||
"typescript": "^5.9.3",
|
||||
"typescript-eslint": "^8.54.0",
|
||||
"vite": "7.3.1",
|
||||
"vite-plugin-solid": "2.11.10",
|
||||
"@vscode/vsce": "^3.7.1"
|
||||
},
|
||||
"dependencies": {
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
import { defineConfig, devices } from "@playwright/test"
|
||||
|
||||
export default defineConfig({
|
||||
testDir: "./tests",
|
||||
testMatch: "**/*.spec.ts",
|
||||
fullyParallel: true,
|
||||
forbidOnly: !!process.env["CI"],
|
||||
retries: process.env["CI"] ? 1 : 0,
|
||||
workers: process.env["PLAYWRIGHT_WORKERS"]
|
||||
? Number.parseInt(process.env["PLAYWRIGHT_WORKERS"]!, 10) || undefined
|
||||
: undefined,
|
||||
reporter: [["html", { open: "never" }], ["list"]],
|
||||
use: {
|
||||
baseURL: "http://localhost:6007",
|
||||
// VS Code sidebar is typically 350-450px wide
|
||||
viewport: { width: 420, height: 720 },
|
||||
reducedMotion: "reduce",
|
||||
screenshot: "only-on-failure",
|
||||
},
|
||||
projects: [
|
||||
{
|
||||
name: "chromium",
|
||||
use: { ...devices["Desktop Chrome"], viewport: { width: 420, height: 720 } },
|
||||
},
|
||||
],
|
||||
webServer: {
|
||||
command:
|
||||
"bunx storybook build -o ./storybook-static && bunx http-server ./storybook-static -p 6007 --silent",
|
||||
url: "http://localhost:6007",
|
||||
reuseExistingServer: !process.env["CI"],
|
||||
timeout: 300_000,
|
||||
},
|
||||
timeout: 60_000,
|
||||
expect: {
|
||||
timeout: 10_000,
|
||||
toHaveScreenshot: {
|
||||
maxDiffPixelRatio: 0.01,
|
||||
},
|
||||
},
|
||||
})
|
||||
@@ -27,7 +27,7 @@ export function buildCspString(cspSource: string, nonce: string, port?: number):
|
||||
`style-src 'unsafe-inline' ${cspSource}`,
|
||||
`script-src 'nonce-${nonce}' 'wasm-unsafe-eval'`,
|
||||
`font-src ${cspSource}`,
|
||||
`connect-src ${connectSrc}`,
|
||||
`connect-src ${cspSource} ${connectSrc}`,
|
||||
`img-src ${cspSource} data: https:`,
|
||||
]
|
||||
return joinCspDirectives(directives)
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
import { describe, it, expect } from "bun:test"
|
||||
import { dict as appEn } from "../../webview-ui/src/i18n/en"
|
||||
import { dict as appZh } from "../../webview-ui/src/i18n/zh"
|
||||
import { dict as appZht } from "../../webview-ui/src/i18n/zht"
|
||||
import { dict as appKo } from "../../webview-ui/src/i18n/ko"
|
||||
import { dict as appDe } from "../../webview-ui/src/i18n/de"
|
||||
import { dict as appEs } from "../../webview-ui/src/i18n/es"
|
||||
import { dict as appFr } from "../../webview-ui/src/i18n/fr"
|
||||
import { dict as appDa } from "../../webview-ui/src/i18n/da"
|
||||
import { dict as appJa } from "../../webview-ui/src/i18n/ja"
|
||||
import { dict as appPl } from "../../webview-ui/src/i18n/pl"
|
||||
import { dict as appRu } from "../../webview-ui/src/i18n/ru"
|
||||
import { dict as appAr } from "../../webview-ui/src/i18n/ar"
|
||||
import { dict as appNo } from "../../webview-ui/src/i18n/no"
|
||||
import { dict as appBr } from "../../webview-ui/src/i18n/br"
|
||||
import { dict as appTh } from "../../webview-ui/src/i18n/th"
|
||||
import { dict as appBs } from "../../webview-ui/src/i18n/bs"
|
||||
import { dict as amEn } from "../../webview-ui/agent-manager/i18n/en"
|
||||
import { dict as amZh } from "../../webview-ui/agent-manager/i18n/zh"
|
||||
import { dict as amZht } from "../../webview-ui/agent-manager/i18n/zht"
|
||||
import { dict as amKo } from "../../webview-ui/agent-manager/i18n/ko"
|
||||
import { dict as amDe } from "../../webview-ui/agent-manager/i18n/de"
|
||||
import { dict as amEs } from "../../webview-ui/agent-manager/i18n/es"
|
||||
import { dict as amFr } from "../../webview-ui/agent-manager/i18n/fr"
|
||||
import { dict as amDa } from "../../webview-ui/agent-manager/i18n/da"
|
||||
import { dict as amJa } from "../../webview-ui/agent-manager/i18n/ja"
|
||||
import { dict as amPl } from "../../webview-ui/agent-manager/i18n/pl"
|
||||
import { dict as amRu } from "../../webview-ui/agent-manager/i18n/ru"
|
||||
import { dict as amAr } from "../../webview-ui/agent-manager/i18n/ar"
|
||||
import { dict as amNo } from "../../webview-ui/agent-manager/i18n/no"
|
||||
import { dict as amBr } from "../../webview-ui/agent-manager/i18n/br"
|
||||
import { dict as amTh } from "../../webview-ui/agent-manager/i18n/th"
|
||||
import { dict as amBs } from "../../webview-ui/agent-manager/i18n/bs"
|
||||
|
||||
const PREFIX = "agentManager."
|
||||
|
||||
const locales = {
|
||||
en: amEn,
|
||||
zh: amZh,
|
||||
zht: amZht,
|
||||
ko: amKo,
|
||||
de: amDe,
|
||||
es: amEs,
|
||||
fr: amFr,
|
||||
da: amDa,
|
||||
ja: amJa,
|
||||
pl: amPl,
|
||||
ru: amRu,
|
||||
ar: amAr,
|
||||
no: amNo,
|
||||
br: amBr,
|
||||
th: amTh,
|
||||
bs: amBs,
|
||||
}
|
||||
|
||||
const appLocales = {
|
||||
en: appEn,
|
||||
zh: appZh,
|
||||
zht: appZht,
|
||||
ko: appKo,
|
||||
de: appDe,
|
||||
es: appEs,
|
||||
fr: appFr,
|
||||
da: appDa,
|
||||
ja: appJa,
|
||||
pl: appPl,
|
||||
ru: appRu,
|
||||
ar: appAr,
|
||||
no: appNo,
|
||||
br: appBr,
|
||||
th: appTh,
|
||||
bs: appBs,
|
||||
}
|
||||
|
||||
describe("Agent Manager i18n split", () => {
|
||||
it("keeps agent manager keys out of general locale dictionaries", () => {
|
||||
for (const [locale, dict] of Object.entries(appLocales)) {
|
||||
const keys = Object.keys(dict)
|
||||
expect(
|
||||
keys.some((key) => key.startsWith(PREFIX)),
|
||||
`locale ${locale} contains agent manager keys`,
|
||||
).toBeFalse()
|
||||
}
|
||||
})
|
||||
|
||||
it("keeps every agent manager locale dictionary scoped to agentManager.* keys", () => {
|
||||
for (const [locale, dict] of Object.entries(locales)) {
|
||||
const keys = Object.keys(dict)
|
||||
expect(keys.length, `locale ${locale} should have agent manager keys`).toBeGreaterThan(0)
|
||||
const invalid = keys.filter((key) => !key.startsWith(PREFIX))
|
||||
expect(invalid, `locale ${locale} has non-agent-manager keys`).toEqual([])
|
||||
}
|
||||
})
|
||||
|
||||
it("contains required core keys in every locale", () => {
|
||||
const required = [
|
||||
"agentManager.local",
|
||||
"agentManager.session.new",
|
||||
"agentManager.apply.error",
|
||||
"agentManager.import.failed",
|
||||
]
|
||||
|
||||
for (const [locale, dict] of Object.entries(locales)) {
|
||||
for (const key of required) {
|
||||
expect((dict as Record<string, string>)[key], `missing key ${key} in locale ${locale}`).toBeDefined()
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -67,6 +67,11 @@ describe("buildCspString", () => {
|
||||
expect(result).not.toContain(":*")
|
||||
})
|
||||
|
||||
it("includes cspSource in connect-src for source map loading", () => {
|
||||
const result = buildCspString(cspSource, nonce)
|
||||
expect(result).toMatch(new RegExp(`connect-src\\s+${cspSource.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}`))
|
||||
})
|
||||
|
||||
it("joins directives with semicolons", () => {
|
||||
const result = buildCspString(cspSource, nonce)
|
||||
const parts = result.split(";")
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
import { test, expect, type Page } from "@playwright/test"
|
||||
import { platform } from "node:os"
|
||||
|
||||
const IS_DARWIN = platform() === "darwin"
|
||||
|
||||
// Screenshot baselines are captured on Linux CI — font rendering and anti-aliasing
|
||||
// differ on macOS, which causes false-positive diffs. Skip the entire suite there.
|
||||
if (IS_DARWIN) {
|
||||
console.warn("Visual regression tests must be run on CI, skipping on local macOS.")
|
||||
test.skip()
|
||||
}
|
||||
|
||||
type Story = {
|
||||
id: string
|
||||
title: string
|
||||
name: string
|
||||
}
|
||||
|
||||
type StoriesIndex = {
|
||||
stories?: Record<string, Story>
|
||||
entries?: Record<string, Story>
|
||||
}
|
||||
|
||||
const STORYBOOK_URL = "http://localhost:6007"
|
||||
|
||||
// Fetched once per worker process — cheap HTTP call to the already-running Storybook
|
||||
async function fetchStories(): Promise<Story[]> {
|
||||
const res = await fetch(`${STORYBOOK_URL}/index.json`).catch(() => fetch(`${STORYBOOK_URL}/stories.json`))
|
||||
if (!res.ok) throw new Error(`Storybook index fetch failed: ${res.status} ${res.statusText}`)
|
||||
const data = (await res.json()) as StoriesIndex
|
||||
const map = data.entries ?? data.stories ?? {}
|
||||
return Object.values(map).filter((s) => s.id && !s.id.endsWith("--docs"))
|
||||
}
|
||||
|
||||
async function disableAnimations(page: Page) {
|
||||
await page.addStyleTag({
|
||||
content: `
|
||||
*, *::before, *::after {
|
||||
animation-duration: 0s !important;
|
||||
animation-delay: 0s !important;
|
||||
transition-duration: 0s !important;
|
||||
transition-delay: 0s !important;
|
||||
}
|
||||
`,
|
||||
})
|
||||
}
|
||||
|
||||
// Stories to skip from visual regression (add IDs here if needed)
|
||||
const SKIP = new Set<string>([])
|
||||
|
||||
// Use test.describe + beforeAll to avoid top-level await which breaks
|
||||
// on Node.js versions with strict ESM/CJS boundaries.
|
||||
test.describe("Visual Regression", () => {
|
||||
let stories: Story[] = []
|
||||
|
||||
test.beforeAll(async () => {
|
||||
if (IS_DARWIN) return
|
||||
stories = (await fetchStories()).filter((s) => !SKIP.has(s.id))
|
||||
})
|
||||
|
||||
test("all stories", async ({ page }) => {
|
||||
if (IS_DARWIN) return
|
||||
for (const story of stories) {
|
||||
// Use kilo-vscode theme by default (matched to the preview initialGlobals)
|
||||
await page.goto(
|
||||
`/iframe.html?id=${story.id}&viewMode=story&globals=colorScheme:dark;theme:kilo-vscode;vscodeTheme:dark-modern`,
|
||||
{ waitUntil: "load" },
|
||||
)
|
||||
await disableAnimations(page)
|
||||
await page.waitForSelector("#storybook-root *", { state: "attached" })
|
||||
|
||||
const [component, variant] = story.id.split("--")
|
||||
const root = page.locator("#storybook-root")
|
||||
await expect(root).toHaveScreenshot([component!, `${variant}.png`])
|
||||
}
|
||||
})
|
||||
})
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:04332222bf7bf3680954f967414f93e9e3d03747961fada79cd32d4a5e2a1431
|
||||
size 10279
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ee4898a628110edf572fa27433bbb905d260225be0dd2154ccdfd4e4a2ea4c1e
|
||||
size 4415
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4b6d383088e69f94aeed3e9291092d1278f8346b2d50889bd83ecc72db5d13b7
|
||||
size 2846
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b1c5266bca40764f48d0cdefa3398083708ed7deb354acf8a5a296f9f9e0b2a6
|
||||
size 9005
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c13ea96b21def4f7359426d9d8900bab511938d4f71bc6635daaba44a2bbd133
|
||||
size 25078
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cd8a53356f0aa0df5c07246296dc20273f5380a012cd579885b1974e3aeb99e1
|
||||
size 8496
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fa7bddaa15cf80565ef5b639bfe2de8d2f373019da4b72210c8ea82aaf47913f
|
||||
size 10384
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:64ff66248b1c07209757eb6e27ccac4967650b144317ee21076ba82c129bc17b
|
||||
size 8846
|
||||
@@ -0,0 +1,142 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "محلي",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "الجلسات",
|
||||
"agentManager.notGitRepo": "ليس مستودع git",
|
||||
"agentManager.worktree.settings": "إعدادات Worktree",
|
||||
"agentManager.worktree.new": "Worktree جديد",
|
||||
"agentManager.worktree.setupScript": "سكربت إعداد Worktree",
|
||||
"agentManager.worktree.delete": "حذف Worktree",
|
||||
"agentManager.worktree.stale": "قديم",
|
||||
"agentManager.worktree.staleTooltip": "مفقود على القرص أو لم يعد git worktree يتتبعه",
|
||||
"agentManager.worktree.removeStale": "إزالة Worktree القديم",
|
||||
"agentManager.worktree.doubleClickRename": "انقر مرتين لإعادة التسمية",
|
||||
"agentManager.worktree.versions": "{{count}} نسخ",
|
||||
"agentManager.worktree.advancedOptions": "خيارات Worktree متقدمة",
|
||||
"agentManager.hoverCard.branch": "الفرع",
|
||||
"agentManager.hoverCard.base": "الأساس",
|
||||
"agentManager.hoverCard.sessions": "الجلسات",
|
||||
"agentManager.hoverCard.files": "الملفات",
|
||||
"agentManager.hoverCard.changes": "التغييرات",
|
||||
"agentManager.hoverCard.commits": "عمليات الالتزام",
|
||||
"agentManager.session.new": "جلسة جديدة",
|
||||
"agentManager.session.untitled": "بدون عنوان",
|
||||
"agentManager.session.newSession": "جلسة جديدة",
|
||||
"agentManager.session.openInWorktree": "فتح في Worktree",
|
||||
"agentManager.session.readonly": "جلسة للقراءة فقط",
|
||||
"agentManager.session.noSessions": "لا توجد جلسات مفتوحة",
|
||||
"agentManager.tab.close": "إغلاق",
|
||||
"agentManager.tab.closeTab": "إغلاق علامة التبويب",
|
||||
"agentManager.tab.terminal": "الطرفية",
|
||||
"agentManager.tab.openTerminal": "فتح الطرفية",
|
||||
"agentManager.setup.failed": "فشل إعداد مساحة العمل",
|
||||
"agentManager.setup.settingUp": "جارٍ إعداد مساحة العمل",
|
||||
"agentManager.shortcuts.title": "اختصارات لوحة المفاتيح",
|
||||
"agentManager.shortcuts.category.sidebar": "الشريط الجانبي",
|
||||
"agentManager.shortcuts.category.tabs": "علامات التبويب",
|
||||
"agentManager.shortcuts.category.terminal": "الطرفية",
|
||||
"agentManager.shortcuts.category.global": "عام",
|
||||
"agentManager.shortcuts.previousItem": "العنصر السابق",
|
||||
"agentManager.shortcuts.nextItem": "العنصر التالي",
|
||||
"agentManager.shortcuts.newWorktree": "Worktree جديد",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree متقدم",
|
||||
"agentManager.shortcuts.deleteWorktree": "حذف Worktree",
|
||||
"agentManager.shortcuts.previousTab": "علامة التبويب السابقة",
|
||||
"agentManager.shortcuts.nextTab": "علامة التبويب التالية",
|
||||
"agentManager.shortcuts.newTab": "علامة تبويب جديدة",
|
||||
"agentManager.shortcuts.closeTab": "إغلاق علامة التبويب",
|
||||
"agentManager.shortcuts.toggleTerminal": "تبديل الطرفية",
|
||||
"agentManager.shortcuts.focusPanel": "تركيز اللوحة",
|
||||
"agentManager.shortcuts.openAgentManager": "فتح Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "حذف Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "حذف Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "؟ سيؤدي هذا إلى إزالة Worktree من القرص وفصل جميع الجلسات.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "إلغاء",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "حذف",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "إزالة Worktree القديم",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "إزالة Worktree القديم ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"؟ سيؤدي هذا إلى إزالة الربط في Agent Manager فقط وترك الملفات على القرص دون تغيير.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "إلغاء",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "إزالة Worktree القديم",
|
||||
|
||||
"agentManager.dialog.openWorktree": "شجرة عمل جديدة",
|
||||
"agentManager.dialog.tab.new": "جديد",
|
||||
"agentManager.dialog.tab.import": "استيراد",
|
||||
"agentManager.dialog.namePlaceholder": "اسم Worktree (اختياري)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "اكتب رسالة (⌘Enter للإرسال)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "اكتب رسالة (Ctrl+Enter للإرسال)",
|
||||
"agentManager.dialog.advancedOptions": "خيارات متقدمة",
|
||||
"agentManager.dialog.branchName": "اسم الفرع",
|
||||
"agentManager.dialog.branchNamePlaceholder": "يتم إنشاؤه تلقائيًا",
|
||||
"agentManager.dialog.baseBranch": "الفرع الأساسي",
|
||||
"agentManager.dialog.searchBranches": "البحث في الفروع...",
|
||||
"agentManager.dialog.branchBadge.default": "افتراضي",
|
||||
"agentManager.dialog.branchBadge.remote": "بعيد",
|
||||
"agentManager.dialog.versions": "النسخ",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktrees ستعمل بالتوازي",
|
||||
"agentManager.dialog.compareModels": "مقارنة النماذج",
|
||||
"agentManager.dialog.compareModels.searchModels": "البحث عن النماذج...",
|
||||
"agentManager.dialog.creating": "جارٍ الإنشاء...",
|
||||
"agentManager.dialog.createWorkspace": "إنشاء شجرة العمل",
|
||||
"agentManager.dialog.removeImage": "إزالة الصورة",
|
||||
"agentManager.dialog.advanced": "متقدم...",
|
||||
|
||||
"agentManager.diff.toggle": "تبديل الفرق",
|
||||
"agentManager.diff.openFile": "فتح الملف",
|
||||
"agentManager.apply.button": "تطبيق محليًا",
|
||||
"agentManager.apply.globalButton": "تطبيق",
|
||||
"agentManager.apply.tooltip": "تطبيق تغييرات شجرة العمل المحددة على الفرع المحلي",
|
||||
"agentManager.apply.dialogTitle": "تطبيق التغييرات على الفرع المحلي",
|
||||
"agentManager.apply.confirm": "تطبيق الآن",
|
||||
"agentManager.apply.retry": "إعادة محاولة التطبيق",
|
||||
"agentManager.apply.previewTitle": "تطبيق هذه التغييرات على الفرع المحلي؟",
|
||||
"agentManager.apply.previewSummary": "{{files}} ملفات، +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} من {{total}} ملفات محددة",
|
||||
"agentManager.apply.selectAll": "تحديد الكل",
|
||||
"agentManager.apply.selectNone": "إلغاء تحديد الكل",
|
||||
"agentManager.apply.moreFiles": "+{{count}} المزيد",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} المزيد)",
|
||||
"agentManager.apply.checking": "جارٍ التحقق...",
|
||||
"agentManager.apply.applying": "جارٍ التطبيق...",
|
||||
"agentManager.apply.success": "تم تطبيق التغييرات",
|
||||
"agentManager.apply.conflict": "التطبيق يحتوي على تعارضات",
|
||||
"agentManager.apply.conflictToast": "{{count}} تعارضات في {{files}} ملفات. راجع التفاصيل في التطبيق.",
|
||||
"agentManager.apply.error": "فشل التطبيق",
|
||||
"agentManager.apply.conflictsTitle": "التعارضات",
|
||||
"agentManager.apply.unknownFile": "ملف غير محلول",
|
||||
"agentManager.apply.reason.index": "الملف المحلي يختلف عن النسخة المتوقعة",
|
||||
"agentManager.apply.reason.patch": "لا يمكن تطبيق التصحيح بشكل نظيف",
|
||||
"agentManager.apply.reason.contents": "لا يمكن قراءة محتويات الملف المحلي الحالي",
|
||||
"agentManager.apply.reason.unknown": "تم اكتشاف تعارض",
|
||||
"agentManager.apply.inline.success": "تم التطبيق",
|
||||
"agentManager.apply.inline.conflict": "تعارضات",
|
||||
"agentManager.apply.inline.error": "فشل",
|
||||
"agentManager.shortcuts.toggleDiff": "تبديل لوحة الفرق",
|
||||
"agentManager.shortcuts.category.quickSwitch": "التبديل السريع",
|
||||
"agentManager.shortcuts.jumpToItem": "الانتقال إلى العنصر 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "إرسال الكل إلى الدردشة",
|
||||
"agentManager.review.sendAllToChatWithCount": "إرسال الكل إلى الدردشة ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "تعليق على السطر {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "تعديل التعليق على السطر {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "اترك تعليقًا...",
|
||||
"agentManager.review.commentAction": "تعليق",
|
||||
"agentManager.review.sendToChat": "إرسال إلى الدردشة",
|
||||
"agentManager.review.collapsedOnly": "{{count}} مطوي",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} مطوي، {{large}} كبير",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "الصق رابط PR...",
|
||||
"agentManager.import.open": "فتح",
|
||||
"agentManager.import.branches": "الفروع",
|
||||
"agentManager.import.selectBranch": "اختر فرعًا...",
|
||||
"agentManager.import.loading": "جارٍ التحميل...",
|
||||
"agentManager.import.loadingBranches": "جارٍ تحميل الفروع...",
|
||||
"agentManager.import.noMatchingBranches": "لا توجد فروع مطابقة",
|
||||
"agentManager.import.noBranchesFound": "لم يتم العثور على فروع.",
|
||||
"agentManager.import.noBranchesHint": "الصق رابط PR أعلاه أو أنشئ Worktree جديدًا.",
|
||||
"agentManager.import.failed": "فشل الاستيراد",
|
||||
}
|
||||
@@ -0,0 +1,142 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSÕES",
|
||||
"agentManager.notGitRepo": "Não é um repositório git",
|
||||
"agentManager.worktree.settings": "Configurações do Worktree",
|
||||
"agentManager.worktree.new": "Novo Worktree",
|
||||
"agentManager.worktree.setupScript": "Script de configuração do Worktree",
|
||||
"agentManager.worktree.delete": "Excluir Worktree",
|
||||
"agentManager.worktree.stale": "Obsoleto",
|
||||
"agentManager.worktree.staleTooltip": "Ausente no disco ou não é mais rastreado pelo git worktree",
|
||||
"agentManager.worktree.removeStale": "Remover Worktree obsoleto",
|
||||
"agentManager.worktree.doubleClickRename": "Clique duplo para renomear",
|
||||
"agentManager.worktree.versions": "{{count}} versões",
|
||||
"agentManager.worktree.advancedOptions": "Opções avançadas de Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessões",
|
||||
"agentManager.hoverCard.files": "Arquivos",
|
||||
"agentManager.hoverCard.changes": "Alterações",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Nova sessão",
|
||||
"agentManager.session.untitled": "Sem título",
|
||||
"agentManager.session.newSession": "Nova Sessão",
|
||||
"agentManager.session.openInWorktree": "Abrir no Worktree",
|
||||
"agentManager.session.readonly": "Sessão somente leitura",
|
||||
"agentManager.session.noSessions": "Nenhuma sessão aberta",
|
||||
"agentManager.tab.close": "Fechar",
|
||||
"agentManager.tab.closeTab": "Fechar aba",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Abrir Terminal",
|
||||
"agentManager.setup.failed": "Falha na configuração do workspace",
|
||||
"agentManager.setup.settingUp": "Configurando workspace",
|
||||
"agentManager.shortcuts.title": "Atalhos de Teclado",
|
||||
"agentManager.shortcuts.category.sidebar": "Barra lateral",
|
||||
"agentManager.shortcuts.category.tabs": "Abas",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Item anterior",
|
||||
"agentManager.shortcuts.nextItem": "Próximo item",
|
||||
"agentManager.shortcuts.newWorktree": "Novo Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree avançado",
|
||||
"agentManager.shortcuts.deleteWorktree": "Excluir Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Aba anterior",
|
||||
"agentManager.shortcuts.nextTab": "Próxima aba",
|
||||
"agentManager.shortcuts.newTab": "Nova aba",
|
||||
"agentManager.shortcuts.closeTab": "Fechar aba",
|
||||
"agentManager.shortcuts.toggleTerminal": "Alternar terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Focar painel",
|
||||
"agentManager.shortcuts.openAgentManager": "Abrir Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Excluir Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Excluir Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Isso remove o Worktree do disco e desassocia todas as sessões.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Excluir",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Remover Worktree obsoleto",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Remover Worktree obsoleto ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Isso remove apenas o mapeamento no Agent Manager e não altera os arquivos no disco.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Remover Worktree obsoleto",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Novo Worktree",
|
||||
"agentManager.dialog.tab.new": "Novo",
|
||||
"agentManager.dialog.tab.import": "Importar",
|
||||
"agentManager.dialog.namePlaceholder": "Nome do Worktree (opcional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Digite uma mensagem (⌘Enter para enviar)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Digite uma mensagem (Ctrl+Enter para enviar)",
|
||||
"agentManager.dialog.advancedOptions": "Opções avançadas",
|
||||
"agentManager.dialog.branchName": "Nome do branch",
|
||||
"agentManager.dialog.branchNamePlaceholder": "gerado automaticamente",
|
||||
"agentManager.dialog.baseBranch": "Branch base",
|
||||
"agentManager.dialog.searchBranches": "Buscar branches...",
|
||||
"agentManager.dialog.branchBadge.default": "padrão",
|
||||
"agentManager.dialog.branchBadge.remote": "remoto",
|
||||
"agentManager.dialog.versions": "Versões",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees serão executados em paralelo",
|
||||
"agentManager.dialog.compareModels": "Comparar Modelos",
|
||||
"agentManager.dialog.compareModels.searchModels": "Pesquisar modelos...",
|
||||
"agentManager.dialog.creating": "Criando...",
|
||||
"agentManager.dialog.createWorkspace": "Criar Worktree",
|
||||
"agentManager.dialog.removeImage": "Remover imagem",
|
||||
"agentManager.dialog.advanced": "Avançado...",
|
||||
|
||||
"agentManager.diff.toggle": "Alternar diff",
|
||||
"agentManager.diff.openFile": "Abrir arquivo",
|
||||
"agentManager.apply.button": "Aplicar localmente",
|
||||
"agentManager.apply.globalButton": "Aplicar",
|
||||
"agentManager.apply.tooltip": "Aplicar alterações da worktree selecionada na branch local",
|
||||
"agentManager.apply.dialogTitle": "Aplicar alterações na branch local",
|
||||
"agentManager.apply.confirm": "Aplicar agora",
|
||||
"agentManager.apply.retry": "Tentar aplicar novamente",
|
||||
"agentManager.apply.previewTitle": "Aplicar essas alterações na branch local?",
|
||||
"agentManager.apply.previewSummary": "{{files}} arquivos, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} de {{total}} arquivos selecionados",
|
||||
"agentManager.apply.selectAll": "Selecionar todos",
|
||||
"agentManager.apply.selectNone": "Desmarcar todos",
|
||||
"agentManager.apply.moreFiles": "+{{count}} mais",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} mais)",
|
||||
"agentManager.apply.checking": "Verificando...",
|
||||
"agentManager.apply.applying": "Aplicando...",
|
||||
"agentManager.apply.success": "Alterações aplicadas",
|
||||
"agentManager.apply.conflict": "A aplicação tem conflitos",
|
||||
"agentManager.apply.conflictToast": "{{count}} conflitos em {{files}} arquivos. Revise os detalhes em Aplicar.",
|
||||
"agentManager.apply.error": "A aplicação falhou",
|
||||
"agentManager.apply.conflictsTitle": "Conflitos",
|
||||
"agentManager.apply.unknownFile": "Arquivo não resolvido",
|
||||
"agentManager.apply.reason.index": "O arquivo local difere da versão esperada",
|
||||
"agentManager.apply.reason.patch": "O patch não pode ser aplicado de forma limpa",
|
||||
"agentManager.apply.reason.contents": "Não é possível ler o conteúdo do arquivo local atual",
|
||||
"agentManager.apply.reason.unknown": "Conflito detectado",
|
||||
"agentManager.apply.inline.success": "Aplicado",
|
||||
"agentManager.apply.inline.conflict": "Conflitos",
|
||||
"agentManager.apply.inline.error": "Falhou",
|
||||
"agentManager.shortcuts.toggleDiff": "Alternar painel de diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Troca rápida",
|
||||
"agentManager.shortcuts.jumpToItem": "Ir para o item 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Enviar tudo para o chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Enviar tudo para o chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Comentar na linha {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Editar comentário na linha {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Deixe um comentário...",
|
||||
"agentManager.review.commentAction": "Comentar",
|
||||
"agentManager.review.sendToChat": "Enviar para o chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} recolhidos",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} recolhidos, {{large}} grandes",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Cole a URL do PR...",
|
||||
"agentManager.import.open": "Abrir",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Selecionar branch...",
|
||||
"agentManager.import.loading": "Carregando...",
|
||||
"agentManager.import.loadingBranches": "Carregando branches...",
|
||||
"agentManager.import.noMatchingBranches": "Nenhum branch correspondente",
|
||||
"agentManager.import.noBranchesFound": "Nenhum branch encontrado.",
|
||||
"agentManager.import.noBranchesHint": "Cole uma URL de PR acima ou crie um novo Worktree.",
|
||||
"agentManager.import.failed": "Falha na importação",
|
||||
}
|
||||
@@ -0,0 +1,142 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "lokalno",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESIJE",
|
||||
"agentManager.notGitRepo": "Nije git repozitorij",
|
||||
"agentManager.worktree.settings": "Postavke Worktree-a",
|
||||
"agentManager.worktree.new": "Novi Worktree",
|
||||
"agentManager.worktree.setupScript": "Skripta za postavljanje Worktree-a",
|
||||
"agentManager.worktree.delete": "Obriši Worktree",
|
||||
"agentManager.worktree.stale": "Zastario",
|
||||
"agentManager.worktree.staleTooltip": "Nedostaje na disku ili ga git worktree više ne prati",
|
||||
"agentManager.worktree.removeStale": "Ukloni zastarjeli Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Dvostruki klik za preimenovanje",
|
||||
"agentManager.worktree.versions": "{{count}} verzija",
|
||||
"agentManager.worktree.advancedOptions": "Napredne opcije Worktree-a",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Baza",
|
||||
"agentManager.hoverCard.sessions": "Sesije",
|
||||
"agentManager.hoverCard.files": "Datoteke",
|
||||
"agentManager.hoverCard.changes": "Promjene",
|
||||
"agentManager.hoverCard.commits": "Commiti",
|
||||
"agentManager.session.new": "Nova sesija",
|
||||
"agentManager.session.untitled": "Bez naslova",
|
||||
"agentManager.session.newSession": "Nova sesija",
|
||||
"agentManager.session.openInWorktree": "Otvori u Worktree-u",
|
||||
"agentManager.session.readonly": "Sesija samo za čitanje",
|
||||
"agentManager.session.noSessions": "Nema otvorenih sesija",
|
||||
"agentManager.tab.close": "Zatvori",
|
||||
"agentManager.tab.closeTab": "Zatvori karticu",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Otvori Terminal",
|
||||
"agentManager.setup.failed": "Postavljanje radnog prostora neuspješno",
|
||||
"agentManager.setup.settingUp": "Postavljanje radnog prostora",
|
||||
"agentManager.shortcuts.title": "Prečice na tastaturi",
|
||||
"agentManager.shortcuts.category.sidebar": "Bočna traka",
|
||||
"agentManager.shortcuts.category.tabs": "Kartice",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Globalno",
|
||||
"agentManager.shortcuts.previousItem": "Prethodni element",
|
||||
"agentManager.shortcuts.nextItem": "Sljedeći element",
|
||||
"agentManager.shortcuts.newWorktree": "Novi Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Napredni Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Obriši Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Prethodna kartica",
|
||||
"agentManager.shortcuts.nextTab": "Sljedeća kartica",
|
||||
"agentManager.shortcuts.newTab": "Nova kartica",
|
||||
"agentManager.shortcuts.closeTab": "Zatvori karticu",
|
||||
"agentManager.shortcuts.toggleTerminal": "Prebaci terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokusiraj panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Otvori Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Obriši Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Obriši Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Ovo uklanja Worktree sa diska i odvezuje sve sesije.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Otkaži",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Obriši",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Ukloni zastarjeli Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Ukloni zastarjeli Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Ovo uklanja samo mapiranje u Agent Manageru i ne dira datoteke na disku.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Otkaži",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Ukloni zastarjeli Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Novi worktree",
|
||||
"agentManager.dialog.tab.new": "Novo",
|
||||
"agentManager.dialog.tab.import": "Uvezi",
|
||||
"agentManager.dialog.namePlaceholder": "Naziv Worktree-a (opcionalno)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Unesite poruku (⌘Enter za slanje)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Unesite poruku (Ctrl+Enter za slanje)",
|
||||
"agentManager.dialog.advancedOptions": "Napredne opcije",
|
||||
"agentManager.dialog.branchName": "Naziv brancha",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatski generirano",
|
||||
"agentManager.dialog.baseBranch": "Osnovni branch",
|
||||
"agentManager.dialog.searchBranches": "Pretraži brancheve...",
|
||||
"agentManager.dialog.branchBadge.default": "zadano",
|
||||
"agentManager.dialog.branchBadge.remote": "udaljeno",
|
||||
"agentManager.dialog.versions": "Verzije",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktree-ova će se pokrenuti paralelno",
|
||||
"agentManager.dialog.compareModels": "Uporedi modele",
|
||||
"agentManager.dialog.compareModels.searchModels": "Pretraži modele...",
|
||||
"agentManager.dialog.creating": "Kreiranje...",
|
||||
"agentManager.dialog.createWorkspace": "Kreiraj worktree",
|
||||
"agentManager.dialog.removeImage": "Ukloni sliku",
|
||||
"agentManager.dialog.advanced": "Napredno...",
|
||||
|
||||
"agentManager.diff.toggle": "Prebaci diff",
|
||||
"agentManager.diff.openFile": "Otvori datoteku",
|
||||
"agentManager.apply.button": "Primijeni lokalno",
|
||||
"agentManager.apply.globalButton": "Primijeni",
|
||||
"agentManager.apply.tooltip": "Primijeni promjene odabranog radnog stabla na lokalnu granu",
|
||||
"agentManager.apply.dialogTitle": "Primijeni promjene na lokalnu granu",
|
||||
"agentManager.apply.confirm": "Primijeni sada",
|
||||
"agentManager.apply.retry": "Ponovo pokušaj primjenu",
|
||||
"agentManager.apply.previewTitle": "Primijeniti ove promjene na lokalnu granu?",
|
||||
"agentManager.apply.previewSummary": "{{files}} datoteka, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} od {{total}} datoteka odabrano",
|
||||
"agentManager.apply.selectAll": "Odaberi sve",
|
||||
"agentManager.apply.selectNone": "Poništi odabir",
|
||||
"agentManager.apply.moreFiles": "+{{count}} više",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} više)",
|
||||
"agentManager.apply.checking": "Provjera...",
|
||||
"agentManager.apply.applying": "Primjenjivanje...",
|
||||
"agentManager.apply.success": "Promjene primijenjene",
|
||||
"agentManager.apply.conflict": "Primjena ima konflikte",
|
||||
"agentManager.apply.conflictToast": "{{count}} konflikata u {{files}} datoteka. Pregledajte detalje u Primijeni.",
|
||||
"agentManager.apply.error": "Primjena nije uspjela",
|
||||
"agentManager.apply.conflictsTitle": "Konflikti",
|
||||
"agentManager.apply.unknownFile": "Nerazriješena datoteka",
|
||||
"agentManager.apply.reason.index": "Lokalna datoteka se razlikuje od očekivane verzije",
|
||||
"agentManager.apply.reason.patch": "Zakrpa se ne može čisto primijeniti",
|
||||
"agentManager.apply.reason.contents": "Nije moguće pročitati sadržaj trenutne lokalne datoteke",
|
||||
"agentManager.apply.reason.unknown": "Otkriven konflikt",
|
||||
"agentManager.apply.inline.success": "Primijenjeno",
|
||||
"agentManager.apply.inline.conflict": "Konflikti",
|
||||
"agentManager.apply.inline.error": "Neuspjelo",
|
||||
"agentManager.shortcuts.toggleDiff": "Prebaci panel za diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Brzo prebacivanje",
|
||||
"agentManager.shortcuts.jumpToItem": "Idi na stavku 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Pošalji sve u chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Pošalji sve u chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Komentar na liniji {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Uredi komentar na liniji {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Ostavi komentar...",
|
||||
"agentManager.review.commentAction": "Komentariši",
|
||||
"agentManager.review.sendToChat": "Pošalji u chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} sažeto",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} sažeto, {{large}} velikih",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Zalijepite PR URL...",
|
||||
"agentManager.import.open": "Otvori",
|
||||
"agentManager.import.branches": "Branchevi",
|
||||
"agentManager.import.selectBranch": "Odaberite branch...",
|
||||
"agentManager.import.loading": "Učitavanje...",
|
||||
"agentManager.import.loadingBranches": "Učitavanje brancheva...",
|
||||
"agentManager.import.noMatchingBranches": "Nema odgovarajućih brancheva",
|
||||
"agentManager.import.noBranchesFound": "Nisu pronađeni branchevi.",
|
||||
"agentManager.import.noBranchesHint": "Zalijepite PR URL iznad ili kreirajte novi Worktree.",
|
||||
"agentManager.import.failed": "Uvoz neuspješan",
|
||||
}
|
||||
@@ -0,0 +1,142 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "lokal",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSIONER",
|
||||
"agentManager.notGitRepo": "Ikke et git-repository",
|
||||
"agentManager.worktree.settings": "Worktree-indstillinger",
|
||||
"agentManager.worktree.new": "Nyt Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree-opsætningsscript",
|
||||
"agentManager.worktree.delete": "Slet Worktree",
|
||||
"agentManager.worktree.stale": "Forældet",
|
||||
"agentManager.worktree.staleTooltip": "Mangler på disken eller spores ikke længere af git worktree",
|
||||
"agentManager.worktree.removeStale": "Fjern forældet Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Dobbeltklik for at omdøbe",
|
||||
"agentManager.worktree.versions": "{{count}} versioner",
|
||||
"agentManager.worktree.advancedOptions": "Avancerede Worktree-indstillinger",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessioner",
|
||||
"agentManager.hoverCard.files": "Filer",
|
||||
"agentManager.hoverCard.changes": "Ændringer",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Ny session",
|
||||
"agentManager.session.untitled": "Uden titel",
|
||||
"agentManager.session.newSession": "Ny session",
|
||||
"agentManager.session.openInWorktree": "Åbn i Worktree",
|
||||
"agentManager.session.readonly": "Skrivebeskyttet session",
|
||||
"agentManager.session.noSessions": "Ingen åbne sessioner",
|
||||
"agentManager.tab.close": "Luk",
|
||||
"agentManager.tab.closeTab": "Luk fane",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Åbn Terminal",
|
||||
"agentManager.setup.failed": "Opsætning af workspace mislykkedes",
|
||||
"agentManager.setup.settingUp": "Opsætter workspace",
|
||||
"agentManager.shortcuts.title": "Tastaturgenveje",
|
||||
"agentManager.shortcuts.category.sidebar": "Sidebjælke",
|
||||
"agentManager.shortcuts.category.tabs": "Faner",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Forrige element",
|
||||
"agentManager.shortcuts.nextItem": "Næste element",
|
||||
"agentManager.shortcuts.newWorktree": "Nyt Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Avanceret Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Slet Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Forrige fane",
|
||||
"agentManager.shortcuts.nextTab": "Næste fane",
|
||||
"agentManager.shortcuts.newTab": "Ny fane",
|
||||
"agentManager.shortcuts.closeTab": "Luk fane",
|
||||
"agentManager.shortcuts.toggleTerminal": "Skift terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokuser panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Åbn Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Slet Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Slet Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Dette fjerner Worktree fra disken og afkobler alle sessioner.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Annuller",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Slet",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Fjern forældet Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Fjern forældet Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Dette fjerner kun tilknytningen i Agent Manager og efterlader filer på disken urørt.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Annuller",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Fjern forældet Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Ny Worktree",
|
||||
"agentManager.dialog.tab.new": "Ny",
|
||||
"agentManager.dialog.tab.import": "Importér",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree-navn (valgfrit)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Skriv en besked (⌘Enter for at sende)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Skriv en besked (Ctrl+Enter for at sende)",
|
||||
"agentManager.dialog.advancedOptions": "Avancerede indstillinger",
|
||||
"agentManager.dialog.branchName": "Branch-navn",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatisk genereret",
|
||||
"agentManager.dialog.baseBranch": "Base-branch",
|
||||
"agentManager.dialog.searchBranches": "Søg branches...",
|
||||
"agentManager.dialog.branchBadge.default": "standard",
|
||||
"agentManager.dialog.branchBadge.remote": "fjern",
|
||||
"agentManager.dialog.versions": "Versioner",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees vil køre parallelt",
|
||||
"agentManager.dialog.compareModels": "Sammenlign modeller",
|
||||
"agentManager.dialog.compareModels.searchModels": "Søg modeller...",
|
||||
"agentManager.dialog.creating": "Opretter...",
|
||||
"agentManager.dialog.createWorkspace": "Opret Worktree",
|
||||
"agentManager.dialog.removeImage": "Fjern billede",
|
||||
"agentManager.dialog.advanced": "Avanceret...",
|
||||
|
||||
"agentManager.diff.toggle": "Skift diff",
|
||||
"agentManager.diff.openFile": "Åbn fil",
|
||||
"agentManager.apply.button": "Anvend lokalt",
|
||||
"agentManager.apply.globalButton": "Anvend",
|
||||
"agentManager.apply.tooltip": "Anvend valgte worktree-ændringer på den lokale gren",
|
||||
"agentManager.apply.dialogTitle": "Anvend ændringer på den lokale gren",
|
||||
"agentManager.apply.confirm": "Anvend nu",
|
||||
"agentManager.apply.retry": "Prøv at anvende igen",
|
||||
"agentManager.apply.previewTitle": "Anvend disse ændringer på den lokale gren?",
|
||||
"agentManager.apply.previewSummary": "{{files}} filer, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} af {{total}} filer valgt",
|
||||
"agentManager.apply.selectAll": "Vælg alle",
|
||||
"agentManager.apply.selectNone": "Fravælg alle",
|
||||
"agentManager.apply.moreFiles": "+{{count}} flere",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} flere)",
|
||||
"agentManager.apply.checking": "Kontrollerer...",
|
||||
"agentManager.apply.applying": "Anvender...",
|
||||
"agentManager.apply.success": "Ændringer anvendt",
|
||||
"agentManager.apply.conflict": "Anvendelse har konflikter",
|
||||
"agentManager.apply.conflictToast": "{{count}} konflikter i {{files}} filer. Gennemgå detaljer i Anvend.",
|
||||
"agentManager.apply.error": "Anvendelse mislykkedes",
|
||||
"agentManager.apply.conflictsTitle": "Konflikter",
|
||||
"agentManager.apply.unknownFile": "Uløst fil",
|
||||
"agentManager.apply.reason.index": "Lokal fil adskiller sig fra den forventede version",
|
||||
"agentManager.apply.reason.patch": "Patch kan ikke anvendes rent",
|
||||
"agentManager.apply.reason.contents": "Kan ikke læse det aktuelle lokale filindhold",
|
||||
"agentManager.apply.reason.unknown": "Konflikt opdaget",
|
||||
"agentManager.apply.inline.success": "Anvendt",
|
||||
"agentManager.apply.inline.conflict": "Konflikter",
|
||||
"agentManager.apply.inline.error": "Mislykkedes",
|
||||
"agentManager.shortcuts.toggleDiff": "Skift diff-panel",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Hurtigskift",
|
||||
"agentManager.shortcuts.jumpToItem": "Hop til element 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Send alt til chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Send alt til chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Kommenter på linje {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Rediger kommentar på linje {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Skriv en kommentar...",
|
||||
"agentManager.review.commentAction": "Kommenter",
|
||||
"agentManager.review.sendToChat": "Send til chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} foldet sammen",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} foldet sammen, {{large}} store",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Indsæt PR URL...",
|
||||
"agentManager.import.open": "Åbn",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Vælg branch...",
|
||||
"agentManager.import.loading": "Indlæser...",
|
||||
"agentManager.import.loadingBranches": "Indlæser branches...",
|
||||
"agentManager.import.noMatchingBranches": "Ingen matchende branches",
|
||||
"agentManager.import.noBranchesFound": "Ingen branches fundet.",
|
||||
"agentManager.import.noBranchesHint": "Indsæt en PR URL ovenfor eller opret et nyt Worktree.",
|
||||
"agentManager.import.failed": "Import mislykkedes",
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "lokal",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SITZUNGEN",
|
||||
"agentManager.notGitRepo": "Kein Git-Repository",
|
||||
"agentManager.worktree.settings": "Worktree-Einstellungen",
|
||||
"agentManager.worktree.new": "Neuer Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree-Einrichtungsskript",
|
||||
"agentManager.worktree.delete": "Worktree löschen",
|
||||
"agentManager.worktree.stale": "Veraltet",
|
||||
"agentManager.worktree.staleTooltip": "Fehlt auf der Festplatte oder wird nicht mehr von git worktree verfolgt",
|
||||
"agentManager.worktree.removeStale": "Veralteten Worktree entfernen",
|
||||
"agentManager.worktree.doubleClickRename": "Doppelklick zum Umbenennen",
|
||||
"agentManager.worktree.versions": "{{count}} Versionen",
|
||||
"agentManager.worktree.advancedOptions": "Erweiterte Worktree-Optionen",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Basis",
|
||||
"agentManager.hoverCard.sessions": "Sitzungen",
|
||||
"agentManager.hoverCard.files": "Dateien",
|
||||
"agentManager.hoverCard.changes": "Änderungen",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Neue Sitzung",
|
||||
"agentManager.session.untitled": "Unbenannt",
|
||||
"agentManager.session.newSession": "Neue Sitzung",
|
||||
"agentManager.session.openInWorktree": "In Worktree öffnen",
|
||||
"agentManager.session.readonly": "Schreibgeschützte Sitzung",
|
||||
"agentManager.session.noSessions": "Keine Sitzungen geöffnet",
|
||||
"agentManager.tab.close": "Schließen",
|
||||
"agentManager.tab.closeTab": "Tab schließen",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Terminal öffnen",
|
||||
"agentManager.setup.failed": "Einrichtung des Arbeitsbereichs fehlgeschlagen",
|
||||
"agentManager.setup.settingUp": "Arbeitsbereich wird eingerichtet",
|
||||
"agentManager.shortcuts.title": "Tastenkombinationen",
|
||||
"agentManager.shortcuts.category.sidebar": "Seitenleiste",
|
||||
"agentManager.shortcuts.category.tabs": "Tabs",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Vorheriges Element",
|
||||
"agentManager.shortcuts.nextItem": "Nächstes Element",
|
||||
"agentManager.shortcuts.newWorktree": "Neuer Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Erweiterter Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Worktree löschen",
|
||||
"agentManager.shortcuts.previousTab": "Vorheriger Tab",
|
||||
"agentManager.shortcuts.nextTab": "Nächster Tab",
|
||||
"agentManager.shortcuts.newTab": "Neuer Tab",
|
||||
"agentManager.shortcuts.closeTab": "Tab schließen",
|
||||
"agentManager.shortcuts.toggleTerminal": "Terminal umschalten",
|
||||
"agentManager.shortcuts.focusPanel": "Panel fokussieren",
|
||||
"agentManager.shortcuts.openAgentManager": "Agent Manager öffnen",
|
||||
"agentManager.dialog.deleteWorktree.title": "Worktree löschen",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Worktree löschen ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? Dies entfernt den Worktree von der Festplatte und trennt alle Sitzungen.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Abbrechen",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Löschen",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Veralteten Worktree entfernen",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Veralteten Worktree entfernen ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Dies entfernt nur die Zuordnung im Agent Manager und lässt die Dateien auf der Festplatte unberührt.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Abbrechen",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Veralteten Worktree entfernen",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Neuer Worktree",
|
||||
"agentManager.dialog.tab.new": "Neu",
|
||||
"agentManager.dialog.tab.import": "Importieren",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree-Name (optional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Nachricht eingeben (⌘Enter zum Senden)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Nachricht eingeben (Strg+Enter zum Senden)",
|
||||
"agentManager.dialog.advancedOptions": "Erweiterte Optionen",
|
||||
"agentManager.dialog.branchName": "Branch-Name",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatisch generiert",
|
||||
"agentManager.dialog.baseBranch": "Basis-Branch",
|
||||
"agentManager.dialog.searchBranches": "Branches suchen...",
|
||||
"agentManager.dialog.branchBadge.default": "Standard",
|
||||
"agentManager.dialog.branchBadge.remote": "Remote",
|
||||
"agentManager.dialog.versions": "Versionen",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktrees werden parallel ausgeführt",
|
||||
"agentManager.dialog.compareModels": "Modelle vergleichen",
|
||||
"agentManager.dialog.compareModels.searchModels": "Modelle suchen...",
|
||||
"agentManager.dialog.creating": "Wird erstellt...",
|
||||
"agentManager.dialog.createWorkspace": "Worktree erstellen",
|
||||
"agentManager.dialog.removeImage": "Bild entfernen",
|
||||
"agentManager.dialog.advanced": "Erweitert...",
|
||||
|
||||
"agentManager.diff.toggle": "Diff umschalten",
|
||||
"agentManager.diff.openFile": "Datei öffnen",
|
||||
"agentManager.apply.button": "Lokal anwenden",
|
||||
"agentManager.apply.globalButton": "Anwenden",
|
||||
"agentManager.apply.tooltip": "Ausgewählte Worktree-Änderungen auf den lokalen Branch anwenden",
|
||||
"agentManager.apply.dialogTitle": "Änderungen auf den lokalen Branch anwenden",
|
||||
"agentManager.apply.confirm": "Jetzt anwenden",
|
||||
"agentManager.apply.retry": "Anwenden erneut versuchen",
|
||||
"agentManager.apply.previewTitle": "Diese Änderungen auf den lokalen Branch anwenden?",
|
||||
"agentManager.apply.previewSummary": "{{files}} Dateien, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} von {{total}} Dateien ausgewählt",
|
||||
"agentManager.apply.selectAll": "Alle auswählen",
|
||||
"agentManager.apply.selectNone": "Keine auswählen",
|
||||
"agentManager.apply.moreFiles": "+{{count}} weitere",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} weitere)",
|
||||
"agentManager.apply.checking": "Prüfe...",
|
||||
"agentManager.apply.applying": "Wird angewendet...",
|
||||
"agentManager.apply.success": "Änderungen angewendet",
|
||||
"agentManager.apply.conflict": "Anwenden hat Konflikte",
|
||||
"agentManager.apply.conflictToast": "{{count}} Konflikte in {{files}} Dateien. Details unter Anwenden prüfen.",
|
||||
"agentManager.apply.error": "Anwenden fehlgeschlagen",
|
||||
"agentManager.apply.conflictsTitle": "Konflikte",
|
||||
"agentManager.apply.unknownFile": "Ungelöste Datei",
|
||||
"agentManager.apply.reason.index": "Lokale Datei weicht von der erwarteten Version ab",
|
||||
"agentManager.apply.reason.patch": "Patch kann nicht sauber angewendet werden",
|
||||
"agentManager.apply.reason.contents": "Inhalt der aktuellen lokalen Datei kann nicht gelesen werden",
|
||||
"agentManager.apply.reason.unknown": "Konflikt erkannt",
|
||||
"agentManager.apply.inline.success": "Angewendet",
|
||||
"agentManager.apply.inline.conflict": "Konflikte",
|
||||
"agentManager.apply.inline.error": "Fehlgeschlagen",
|
||||
"agentManager.shortcuts.toggleDiff": "Diff-Panel umschalten",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Schnellwechsel",
|
||||
"agentManager.shortcuts.jumpToItem": "Zu Element 1\u20139 springen",
|
||||
"agentManager.review.sendAllToChat": "Alles an den Chat senden",
|
||||
"agentManager.review.sendAllToChatWithCount": "Alles an den Chat senden ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Kommentar zu Zeile {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Kommentar zu Zeile {{line}} bearbeiten",
|
||||
"agentManager.review.commentPlaceholder": "Kommentar hinterlassen...",
|
||||
"agentManager.review.commentAction": "Kommentieren",
|
||||
"agentManager.review.sendToChat": "An Chat senden",
|
||||
"agentManager.review.collapsedOnly": "{{count}} eingeklappt",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} eingeklappt, {{large}} groß",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "PR-URL einfügen...",
|
||||
"agentManager.import.open": "Öffnen",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Branch auswählen...",
|
||||
"agentManager.import.loading": "Laden...",
|
||||
"agentManager.import.loadingBranches": "Branches werden geladen...",
|
||||
"agentManager.import.noMatchingBranches": "Keine passenden Branches",
|
||||
"agentManager.import.noBranchesFound": "Keine Branches gefunden.",
|
||||
"agentManager.import.noBranchesHint": "Fügen Sie oben eine PR-URL ein oder erstellen Sie einen neuen Worktree.",
|
||||
"agentManager.import.failed": "Import fehlgeschlagen",
|
||||
}
|
||||
@@ -0,0 +1,152 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSIONS",
|
||||
"agentManager.notGitRepo": "Not a git repository",
|
||||
|
||||
"agentManager.worktree.settings": "Worktree settings",
|
||||
"agentManager.worktree.new": "New Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree Setup Script",
|
||||
"agentManager.worktree.delete": "Delete worktree",
|
||||
"agentManager.worktree.stale": "Stale",
|
||||
"agentManager.worktree.staleTooltip": "Missing on disk or no longer tracked by git worktree",
|
||||
"agentManager.worktree.removeStale": "Remove stale worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Double-click to rename",
|
||||
"agentManager.worktree.versions": "{{count}} versions",
|
||||
"agentManager.worktree.advancedOptions": "Advanced worktree options",
|
||||
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessions",
|
||||
"agentManager.hoverCard.files": "Files",
|
||||
"agentManager.hoverCard.changes": "Changes",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
|
||||
"agentManager.session.new": "New session",
|
||||
"agentManager.session.untitled": "Untitled",
|
||||
"agentManager.session.newSession": "New Session",
|
||||
"agentManager.session.openInWorktree": "Open in worktree",
|
||||
"agentManager.session.readonly": "Read-only session",
|
||||
"agentManager.session.noSessions": "No sessions open",
|
||||
|
||||
"agentManager.tab.close": "Close",
|
||||
"agentManager.tab.closeTab": "Close tab",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Open Terminal",
|
||||
|
||||
"agentManager.setup.failed": "Workspace setup failed",
|
||||
"agentManager.setup.settingUp": "Setting up workspace",
|
||||
|
||||
"agentManager.shortcuts.title": "Keyboard Shortcuts",
|
||||
"agentManager.shortcuts.category.sidebar": "Sidebar",
|
||||
"agentManager.shortcuts.category.tabs": "Tabs",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Previous item",
|
||||
"agentManager.shortcuts.nextItem": "Next item",
|
||||
"agentManager.shortcuts.newWorktree": "New worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Advanced worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Delete worktree",
|
||||
"agentManager.shortcuts.previousTab": "Previous tab",
|
||||
"agentManager.shortcuts.nextTab": "Next tab",
|
||||
"agentManager.shortcuts.newTab": "New tab",
|
||||
"agentManager.shortcuts.closeTab": "Close tab",
|
||||
"agentManager.shortcuts.toggleTerminal": "Toggle terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Focus panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Open Agent Manager",
|
||||
|
||||
"agentManager.dialog.deleteWorktree.title": "Delete Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Delete worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? This removes the worktree from disk and dissociates all sessions.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Cancel",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Delete",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Remove Stale Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Remove stale worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? This only removes the Agent Manager mapping and leaves files on disk untouched.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Cancel",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Remove stale worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "New Worktree",
|
||||
"agentManager.dialog.tab.new": "New",
|
||||
"agentManager.dialog.tab.import": "Import",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree name (optional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Type a message (\u2318Enter to send)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Type a message (Ctrl+Enter to send)",
|
||||
"agentManager.dialog.advancedOptions": "Advanced options",
|
||||
"agentManager.dialog.branchName": "Branch name",
|
||||
"agentManager.dialog.branchNamePlaceholder": "auto-generated",
|
||||
"agentManager.dialog.baseBranch": "Base branch",
|
||||
"agentManager.dialog.searchBranches": "Search branches...",
|
||||
"agentManager.dialog.branchBadge.default": "default",
|
||||
"agentManager.dialog.branchBadge.remote": "remote",
|
||||
"agentManager.dialog.versions": "Versions",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees will run in parallel",
|
||||
"agentManager.dialog.compareModels": "Compare Models",
|
||||
"agentManager.dialog.compareModels.searchModels": "Search models...",
|
||||
"agentManager.dialog.creating": "Creating...",
|
||||
"agentManager.dialog.createWorkspace": "Create Worktree",
|
||||
"agentManager.dialog.removeImage": "Remove image",
|
||||
"agentManager.dialog.advanced": "Advanced...",
|
||||
|
||||
"agentManager.diff.toggle": "Toggle diff",
|
||||
"agentManager.diff.openFile": "Open file",
|
||||
"agentManager.apply.button": "Apply to local",
|
||||
"agentManager.apply.globalButton": "Apply",
|
||||
"agentManager.apply.tooltip": "Apply selected worktree changes to local branch",
|
||||
"agentManager.apply.dialogTitle": "Apply changes to local branch",
|
||||
"agentManager.apply.confirm": "Apply now",
|
||||
"agentManager.apply.retry": "Retry apply",
|
||||
"agentManager.apply.previewTitle": "Apply these changes to local branch?",
|
||||
"agentManager.apply.previewSummary": "{{files}} files, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} of {{total}} files selected",
|
||||
"agentManager.apply.selectAll": "Select all",
|
||||
"agentManager.apply.selectNone": "Select none",
|
||||
"agentManager.apply.moreFiles": "+{{count}} more",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} more)",
|
||||
"agentManager.apply.checking": "Checking...",
|
||||
"agentManager.apply.applying": "Applying...",
|
||||
"agentManager.apply.success": "Changes applied",
|
||||
"agentManager.apply.conflict": "Apply has conflicts",
|
||||
"agentManager.apply.conflictToast": "{{count}} conflicts in {{files}} files. Review details in Apply.",
|
||||
"agentManager.apply.error": "Apply failed",
|
||||
"agentManager.apply.conflictsTitle": "Conflicts",
|
||||
"agentManager.apply.unknownFile": "Unresolved file",
|
||||
"agentManager.apply.reason.index": "Local file differs from expected version",
|
||||
"agentManager.apply.reason.patch": "Patch cannot be applied cleanly",
|
||||
"agentManager.apply.reason.contents": "Cannot read current local file contents",
|
||||
"agentManager.apply.reason.unknown": "Conflict detected",
|
||||
"agentManager.apply.inline.success": "Applied",
|
||||
"agentManager.apply.inline.conflict": "Conflicts",
|
||||
"agentManager.apply.inline.error": "Failed",
|
||||
"agentManager.shortcuts.toggleDiff": "Toggle diff panel",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Quick Switch",
|
||||
"agentManager.shortcuts.jumpToItem": "Jump to item 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Send all to chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Send all to chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Comment on line {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Edit comment on line {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Leave a comment...",
|
||||
"agentManager.review.commentAction": "Comment",
|
||||
"agentManager.review.sendToChat": "Send to chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} collapsed",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} collapsed, {{large}} large",
|
||||
"agentManager.review.largeFileCollapsed": "Large file (collapsed)",
|
||||
"agentManager.review.endOfLongDiff": "You made it to the end!",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Paste PR URL...",
|
||||
"agentManager.import.open": "Open",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Select branch...",
|
||||
"agentManager.import.loading": "Loading...",
|
||||
"agentManager.import.loadingBranches": "Loading branches...",
|
||||
"agentManager.import.noMatchingBranches": "No matching branches",
|
||||
"agentManager.import.noBranchesFound": "No branches found.",
|
||||
"agentManager.import.noBranchesHint": "Paste a PR URL above or create a new worktree.",
|
||||
"agentManager.import.failed": "Import failed",
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESIONES",
|
||||
"agentManager.notGitRepo": "No es un repositorio git",
|
||||
"agentManager.worktree.settings": "Configuración de Worktree",
|
||||
"agentManager.worktree.new": "Nuevo Worktree",
|
||||
"agentManager.worktree.setupScript": "Script de configuración de Worktree",
|
||||
"agentManager.worktree.delete": "Eliminar Worktree",
|
||||
"agentManager.worktree.stale": "Obsoleto",
|
||||
"agentManager.worktree.staleTooltip": "No está en disco o ya no está seguido por git worktree",
|
||||
"agentManager.worktree.removeStale": "Eliminar Worktree obsoleto",
|
||||
"agentManager.worktree.doubleClickRename": "Doble clic para renombrar",
|
||||
"agentManager.worktree.versions": "{{count}} versiones",
|
||||
"agentManager.worktree.advancedOptions": "Opciones avanzadas de Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sesiones",
|
||||
"agentManager.hoverCard.files": "Archivos",
|
||||
"agentManager.hoverCard.changes": "Cambios",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Nueva sesión",
|
||||
"agentManager.session.untitled": "Sin título",
|
||||
"agentManager.session.newSession": "Nueva Sesión",
|
||||
"agentManager.session.openInWorktree": "Abrir en Worktree",
|
||||
"agentManager.session.readonly": "Sesión de solo lectura",
|
||||
"agentManager.session.noSessions": "No hay sesiones abiertas",
|
||||
"agentManager.tab.close": "Cerrar",
|
||||
"agentManager.tab.closeTab": "Cerrar pestaña",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Abrir Terminal",
|
||||
"agentManager.setup.failed": "Error en la configuración del workspace",
|
||||
"agentManager.setup.settingUp": "Configurando workspace",
|
||||
"agentManager.shortcuts.title": "Atajos de teclado",
|
||||
"agentManager.shortcuts.category.sidebar": "Barra lateral",
|
||||
"agentManager.shortcuts.category.tabs": "Pestañas",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Elemento anterior",
|
||||
"agentManager.shortcuts.nextItem": "Siguiente elemento",
|
||||
"agentManager.shortcuts.newWorktree": "Nuevo Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree avanzado",
|
||||
"agentManager.shortcuts.deleteWorktree": "Eliminar Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Pestaña anterior",
|
||||
"agentManager.shortcuts.nextTab": "Siguiente pestaña",
|
||||
"agentManager.shortcuts.newTab": "Nueva pestaña",
|
||||
"agentManager.shortcuts.closeTab": "Cerrar pestaña",
|
||||
"agentManager.shortcuts.toggleTerminal": "Alternar terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Enfocar panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Abrir Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Eliminar Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "¿Eliminar Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? Esto elimina el Worktree del disco y desasocia todas las sesiones.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Eliminar",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Eliminar Worktree obsoleto",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "¿Eliminar Worktree obsoleto ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Esto solo elimina la asociación en Agent Manager y no modifica los archivos en disco.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Eliminar Worktree obsoleto",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Nuevo Worktree",
|
||||
"agentManager.dialog.tab.new": "Nuevo",
|
||||
"agentManager.dialog.tab.import": "Importar",
|
||||
"agentManager.dialog.namePlaceholder": "Nombre del Worktree (opcional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Escribe un mensaje (⌘Enter para enviar)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Escribe un mensaje (Ctrl+Enter para enviar)",
|
||||
"agentManager.dialog.advancedOptions": "Opciones avanzadas",
|
||||
"agentManager.dialog.branchName": "Nombre del branch",
|
||||
"agentManager.dialog.branchNamePlaceholder": "generado automáticamente",
|
||||
"agentManager.dialog.baseBranch": "Branch base",
|
||||
"agentManager.dialog.searchBranches": "Buscar branches...",
|
||||
"agentManager.dialog.branchBadge.default": "predeterminado",
|
||||
"agentManager.dialog.branchBadge.remote": "remoto",
|
||||
"agentManager.dialog.versions": "Versiones",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees se ejecutarán en paralelo",
|
||||
"agentManager.dialog.compareModels": "Comparar modelos",
|
||||
"agentManager.dialog.compareModels.searchModels": "Buscar modelos...",
|
||||
"agentManager.dialog.creating": "Creando...",
|
||||
"agentManager.dialog.createWorkspace": "Crear Worktree",
|
||||
"agentManager.dialog.removeImage": "Eliminar imagen",
|
||||
"agentManager.dialog.advanced": "Avanzado...",
|
||||
|
||||
"agentManager.diff.toggle": "Alternar diff",
|
||||
"agentManager.diff.openFile": "Abrir archivo",
|
||||
"agentManager.apply.button": "Aplicar en local",
|
||||
"agentManager.apply.globalButton": "Aplicar",
|
||||
"agentManager.apply.tooltip": "Aplicar los cambios del worktree seleccionado a la rama local",
|
||||
"agentManager.apply.dialogTitle": "Aplicar cambios a la rama local",
|
||||
"agentManager.apply.confirm": "Aplicar ahora",
|
||||
"agentManager.apply.retry": "Reintentar aplicación",
|
||||
"agentManager.apply.previewTitle": "¿Aplicar estos cambios a la rama local?",
|
||||
"agentManager.apply.previewSummary": "{{files}} archivos, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} de {{total}} archivos seleccionados",
|
||||
"agentManager.apply.selectAll": "Seleccionar todos",
|
||||
"agentManager.apply.selectNone": "Deseleccionar todos",
|
||||
"agentManager.apply.moreFiles": "+{{count}} más",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} más)",
|
||||
"agentManager.apply.checking": "Verificando...",
|
||||
"agentManager.apply.applying": "Aplicando...",
|
||||
"agentManager.apply.success": "Cambios aplicados",
|
||||
"agentManager.apply.conflict": "La aplicación tiene conflictos",
|
||||
"agentManager.apply.conflictToast": "{{count}} conflictos en {{files}} archivos. Revise los detalles en Aplicar.",
|
||||
"agentManager.apply.error": "La aplicación falló",
|
||||
"agentManager.apply.conflictsTitle": "Conflictos",
|
||||
"agentManager.apply.unknownFile": "Archivo no resuelto",
|
||||
"agentManager.apply.reason.index": "El archivo local difiere de la versión esperada",
|
||||
"agentManager.apply.reason.patch": "El parche no se puede aplicar limpiamente",
|
||||
"agentManager.apply.reason.contents": "No se puede leer el contenido del archivo local actual",
|
||||
"agentManager.apply.reason.unknown": "Conflicto detectado",
|
||||
"agentManager.apply.inline.success": "Aplicado",
|
||||
"agentManager.apply.inline.conflict": "Conflictos",
|
||||
"agentManager.apply.inline.error": "Falló",
|
||||
"agentManager.shortcuts.toggleDiff": "Alternar panel de diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Cambio rápido",
|
||||
"agentManager.shortcuts.jumpToItem": "Ir al elemento 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Enviar todo al chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Enviar todo al chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Comentar en la línea {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Editar comentario en la línea {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Deja un comentario...",
|
||||
"agentManager.review.commentAction": "Comentar",
|
||||
"agentManager.review.sendToChat": "Enviar al chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} contraídos",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} contraídos, {{large}} grandes",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Pegar URL del PR...",
|
||||
"agentManager.import.open": "Abrir",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Seleccionar branch...",
|
||||
"agentManager.import.loading": "Cargando...",
|
||||
"agentManager.import.loadingBranches": "Cargando branches...",
|
||||
"agentManager.import.noMatchingBranches": "No hay branches coincidentes",
|
||||
"agentManager.import.noBranchesFound": "No se encontraron branches.",
|
||||
"agentManager.import.noBranchesHint": "Pega una URL de PR arriba o crea un nuevo Worktree.",
|
||||
"agentManager.import.failed": "Error en la importación",
|
||||
}
|
||||
@@ -0,0 +1,144 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSIONS",
|
||||
"agentManager.notGitRepo": "Ce n'est pas un dépôt git",
|
||||
"agentManager.worktree.settings": "Paramètres du Worktree",
|
||||
"agentManager.worktree.new": "Nouveau Worktree",
|
||||
"agentManager.worktree.setupScript": "Script de configuration du Worktree",
|
||||
"agentManager.worktree.delete": "Supprimer le Worktree",
|
||||
"agentManager.worktree.stale": "Obsolète",
|
||||
"agentManager.worktree.staleTooltip": "Absent du disque ou n'est plus suivi par git worktree",
|
||||
"agentManager.worktree.removeStale": "Supprimer le Worktree obsolète",
|
||||
"agentManager.worktree.doubleClickRename": "Double-cliquez pour renommer",
|
||||
"agentManager.worktree.versions": "{{count}} versions",
|
||||
"agentManager.worktree.advancedOptions": "Options avancées du Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCHE",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessions",
|
||||
"agentManager.hoverCard.files": "Fichiers",
|
||||
"agentManager.hoverCard.changes": "Modifications",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Nouvelle session",
|
||||
"agentManager.session.untitled": "Sans titre",
|
||||
"agentManager.session.newSession": "Nouvelle session",
|
||||
"agentManager.session.openInWorktree": "Ouvrir dans le Worktree",
|
||||
"agentManager.session.readonly": "Session en lecture seule",
|
||||
"agentManager.session.noSessions": "Aucune session ouverte",
|
||||
"agentManager.tab.close": "Fermer",
|
||||
"agentManager.tab.closeTab": "Fermer l'onglet",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Ouvrir le Terminal",
|
||||
"agentManager.setup.failed": "Échec de la configuration de l'espace de travail",
|
||||
"agentManager.setup.settingUp": "Configuration de l'espace de travail",
|
||||
"agentManager.shortcuts.title": "Raccourcis clavier",
|
||||
"agentManager.shortcuts.category.sidebar": "Barre latérale",
|
||||
"agentManager.shortcuts.category.tabs": "Onglets",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Élément précédent",
|
||||
"agentManager.shortcuts.nextItem": "Élément suivant",
|
||||
"agentManager.shortcuts.newWorktree": "Nouveau Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree avancé",
|
||||
"agentManager.shortcuts.deleteWorktree": "Supprimer le Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Onglet précédent",
|
||||
"agentManager.shortcuts.nextTab": "Onglet suivant",
|
||||
"agentManager.shortcuts.newTab": "Nouvel onglet",
|
||||
"agentManager.shortcuts.closeTab": "Fermer l'onglet",
|
||||
"agentManager.shortcuts.toggleTerminal": "Basculer le terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Focaliser le panneau",
|
||||
"agentManager.shortcuts.openAgentManager": "Ouvrir Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Supprimer le Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Supprimer le Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
" ? Cela supprime le Worktree du disque et dissocie toutes les sessions.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Annuler",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Supprimer",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Supprimer le Worktree obsolète",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Supprimer le Worktree obsolète ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
" ? Cela supprime uniquement l'association dans Agent Manager et laisse les fichiers du disque inchangés.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Annuler",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Supprimer le Worktree obsolète",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Nouveau worktree",
|
||||
"agentManager.dialog.tab.new": "Nouveau",
|
||||
"agentManager.dialog.tab.import": "Importer",
|
||||
"agentManager.dialog.namePlaceholder": "Nom du Worktree (optionnel)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Saisissez un message (⌘Entrée pour envoyer)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Saisissez un message (Ctrl+Entrée pour envoyer)",
|
||||
"agentManager.dialog.advancedOptions": "Options avancées",
|
||||
"agentManager.dialog.branchName": "Nom de la branche",
|
||||
"agentManager.dialog.branchNamePlaceholder": "généré automatiquement",
|
||||
"agentManager.dialog.baseBranch": "Branche de base",
|
||||
"agentManager.dialog.searchBranches": "Rechercher des branches...",
|
||||
"agentManager.dialog.branchBadge.default": "par défaut",
|
||||
"agentManager.dialog.branchBadge.remote": "distant",
|
||||
"agentManager.dialog.versions": "Versions",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees s'exécuteront en parallèle",
|
||||
"agentManager.dialog.compareModels": "Comparer les modèles",
|
||||
"agentManager.dialog.compareModels.searchModels": "Rechercher des modèles...",
|
||||
"agentManager.dialog.creating": "Création...",
|
||||
"agentManager.dialog.createWorkspace": "Créer un worktree",
|
||||
"agentManager.dialog.removeImage": "Supprimer l'image",
|
||||
"agentManager.dialog.advanced": "Avancé...",
|
||||
|
||||
"agentManager.diff.toggle": "Basculer le diff",
|
||||
"agentManager.diff.openFile": "Ouvrir le fichier",
|
||||
"agentManager.apply.button": "Appliquer en local",
|
||||
"agentManager.apply.globalButton": "Appliquer",
|
||||
"agentManager.apply.tooltip": "Appliquer les modifications du worktree sélectionné à la branche locale",
|
||||
"agentManager.apply.dialogTitle": "Appliquer les modifications à la branche locale",
|
||||
"agentManager.apply.confirm": "Appliquer maintenant",
|
||||
"agentManager.apply.retry": "Réessayer l'application",
|
||||
"agentManager.apply.previewTitle": "Appliquer ces modifications à la branche locale ?",
|
||||
"agentManager.apply.previewSummary": "{{files}} fichiers, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} sur {{total}} fichiers sélectionnés",
|
||||
"agentManager.apply.selectAll": "Tout sélectionner",
|
||||
"agentManager.apply.selectNone": "Tout désélectionner",
|
||||
"agentManager.apply.moreFiles": "+{{count}} de plus",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} de plus)",
|
||||
"agentManager.apply.checking": "Vérification...",
|
||||
"agentManager.apply.applying": "Application...",
|
||||
"agentManager.apply.success": "Modifications appliquées",
|
||||
"agentManager.apply.conflict": "L'application comporte des conflits",
|
||||
"agentManager.apply.conflictToast":
|
||||
"{{count}} conflits dans {{files}} fichiers. Consultez les détails dans Appliquer.",
|
||||
"agentManager.apply.error": "Échec de l'application",
|
||||
"agentManager.apply.conflictsTitle": "Conflits",
|
||||
"agentManager.apply.unknownFile": "Fichier non résolu",
|
||||
"agentManager.apply.reason.index": "Le fichier local diffère de la version attendue",
|
||||
"agentManager.apply.reason.patch": "Le patch ne peut pas être appliqué proprement",
|
||||
"agentManager.apply.reason.contents": "Impossible de lire le contenu du fichier local actuel",
|
||||
"agentManager.apply.reason.unknown": "Conflit détecté",
|
||||
"agentManager.apply.inline.success": "Appliqué",
|
||||
"agentManager.apply.inline.conflict": "Conflits",
|
||||
"agentManager.apply.inline.error": "Échoué",
|
||||
"agentManager.shortcuts.toggleDiff": "Basculer le panneau de diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Changement rapide",
|
||||
"agentManager.shortcuts.jumpToItem": "Aller à l'élément 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Tout envoyer au chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Tout envoyer au chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Commenter la ligne {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Modifier le commentaire de la ligne {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Laisser un commentaire...",
|
||||
"agentManager.review.commentAction": "Commenter",
|
||||
"agentManager.review.sendToChat": "Envoyer au chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} repliés",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} repliés, {{large}} volumineux",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Coller l'URL du PR...",
|
||||
"agentManager.import.open": "Ouvrir",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Sélectionner une branche...",
|
||||
"agentManager.import.loading": "Chargement...",
|
||||
"agentManager.import.loadingBranches": "Chargement des branches...",
|
||||
"agentManager.import.noMatchingBranches": "Aucune branche correspondante",
|
||||
"agentManager.import.noBranchesFound": "Aucune branche trouvée.",
|
||||
"agentManager.import.noBranchesHint": "Collez une URL de PR ci-dessus ou créez un nouveau Worktree.",
|
||||
"agentManager.import.failed": "Échec de l'importation",
|
||||
}
|
||||
@@ -0,0 +1,144 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "ローカル",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "セッション",
|
||||
"agentManager.notGitRepo": "gitリポジトリではありません",
|
||||
"agentManager.worktree.settings": "Worktree設定",
|
||||
"agentManager.worktree.new": "新しいWorktree",
|
||||
"agentManager.worktree.setupScript": "Worktreeセットアップスクリプト",
|
||||
"agentManager.worktree.delete": "Worktreeを削除",
|
||||
"agentManager.worktree.stale": "無効",
|
||||
"agentManager.worktree.staleTooltip": "ディスク上に存在しないか、git worktree で追跡されていません",
|
||||
"agentManager.worktree.removeStale": "無効な Worktree を削除",
|
||||
"agentManager.worktree.doubleClickRename": "ダブルクリックで名前を変更",
|
||||
"agentManager.worktree.versions": "{{count}}バージョン",
|
||||
"agentManager.worktree.advancedOptions": "Worktreeの詳細オプション",
|
||||
"agentManager.hoverCard.branch": "ブランチ",
|
||||
"agentManager.hoverCard.base": "ベース",
|
||||
"agentManager.hoverCard.sessions": "セッション",
|
||||
"agentManager.hoverCard.files": "ファイル",
|
||||
"agentManager.hoverCard.changes": "変更",
|
||||
"agentManager.hoverCard.commits": "コミット",
|
||||
"agentManager.session.new": "新しいセッション",
|
||||
"agentManager.session.untitled": "無題",
|
||||
"agentManager.session.newSession": "新しいセッション",
|
||||
"agentManager.session.openInWorktree": "Worktreeで開く",
|
||||
"agentManager.session.readonly": "読み取り専用セッション",
|
||||
"agentManager.session.noSessions": "開いているセッションがありません",
|
||||
"agentManager.tab.close": "閉じる",
|
||||
"agentManager.tab.closeTab": "タブを閉じる",
|
||||
"agentManager.tab.terminal": "ターミナル",
|
||||
"agentManager.tab.openTerminal": "ターミナルを開く",
|
||||
"agentManager.setup.failed": "ワークスペースのセットアップに失敗しました",
|
||||
"agentManager.setup.settingUp": "ワークスペースをセットアップ中",
|
||||
"agentManager.shortcuts.title": "キーボードショートカット",
|
||||
"agentManager.shortcuts.category.sidebar": "サイドバー",
|
||||
"agentManager.shortcuts.category.tabs": "タブ",
|
||||
"agentManager.shortcuts.category.terminal": "ターミナル",
|
||||
"agentManager.shortcuts.category.global": "グローバル",
|
||||
"agentManager.shortcuts.previousItem": "前の項目",
|
||||
"agentManager.shortcuts.nextItem": "次の項目",
|
||||
"agentManager.shortcuts.newWorktree": "新しいWorktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "詳細Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Worktreeを削除",
|
||||
"agentManager.shortcuts.previousTab": "前のタブ",
|
||||
"agentManager.shortcuts.nextTab": "次のタブ",
|
||||
"agentManager.shortcuts.newTab": "新しいタブ",
|
||||
"agentManager.shortcuts.closeTab": "タブを閉じる",
|
||||
"agentManager.shortcuts.toggleTerminal": "ターミナルの切り替え",
|
||||
"agentManager.shortcuts.focusPanel": "パネルにフォーカス",
|
||||
"agentManager.shortcuts.openAgentManager": "Agent Managerを開く",
|
||||
"agentManager.dialog.deleteWorktree.title": "Worktreeを削除",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Worktreeを削除 ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? ディスクからWorktreeを削除し、すべてのセッションの関連付けを解除します。",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "キャンセル",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "削除",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "無効な Worktree を削除",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "無効な Worktree を削除 ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? これは Agent Manager の関連付けのみを削除し、ディスク上のファイルは変更しません。",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "キャンセル",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "無効な Worktree を削除",
|
||||
|
||||
"agentManager.dialog.openWorktree": "新規ワークツリー",
|
||||
"agentManager.dialog.tab.new": "新規",
|
||||
"agentManager.dialog.tab.import": "インポート",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree名(任意)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "メッセージを入力(⌘Enterで送信)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "メッセージを入力(Ctrl+Enterで送信)",
|
||||
"agentManager.dialog.advancedOptions": "詳細オプション",
|
||||
"agentManager.dialog.branchName": "ブランチ名",
|
||||
"agentManager.dialog.branchNamePlaceholder": "自動生成",
|
||||
"agentManager.dialog.baseBranch": "ベースブランチ",
|
||||
"agentManager.dialog.searchBranches": "ブランチを検索...",
|
||||
"agentManager.dialog.branchBadge.default": "デフォルト",
|
||||
"agentManager.dialog.branchBadge.remote": "リモート",
|
||||
"agentManager.dialog.versions": "バージョン",
|
||||
"agentManager.dialog.versionHint": "{{count}}個のWorktreeが並行して実行されます",
|
||||
"agentManager.dialog.compareModels": "モデルを比較",
|
||||
"agentManager.dialog.compareModels.searchModels": "モデルを検索...",
|
||||
"agentManager.dialog.creating": "作成中...",
|
||||
"agentManager.dialog.createWorkspace": "ワークツリーを作成",
|
||||
"agentManager.dialog.removeImage": "画像を削除",
|
||||
"agentManager.dialog.advanced": "詳細...",
|
||||
|
||||
"agentManager.diff.toggle": "差分を切り替え",
|
||||
"agentManager.diff.openFile": "ファイルを開く",
|
||||
"agentManager.apply.button": "ローカルに適用",
|
||||
"agentManager.apply.globalButton": "適用",
|
||||
"agentManager.apply.tooltip": "選択したワークツリーの変更をローカルブランチに適用",
|
||||
"agentManager.apply.dialogTitle": "ローカルブランチに変更を適用",
|
||||
"agentManager.apply.confirm": "今すぐ適用",
|
||||
"agentManager.apply.retry": "適用を再試行",
|
||||
"agentManager.apply.previewTitle": "これらの変更をローカルブランチに適用しますか?",
|
||||
"agentManager.apply.previewSummary": "{{files}} ファイル、+{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{total}} ファイル中 {{selected}} 件選択",
|
||||
"agentManager.apply.selectAll": "すべて選択",
|
||||
"agentManager.apply.selectNone": "選択解除",
|
||||
"agentManager.apply.moreFiles": "+{{count}} 件",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} 件)",
|
||||
"agentManager.apply.checking": "確認中...",
|
||||
"agentManager.apply.applying": "適用中...",
|
||||
"agentManager.apply.success": "変更が適用されました",
|
||||
"agentManager.apply.conflict": "適用に競合があります",
|
||||
"agentManager.apply.conflictToast":
|
||||
"{{files}} ファイルに {{count}} 件の競合があります。適用で詳細を確認してください。",
|
||||
"agentManager.apply.error": "適用に失敗しました",
|
||||
"agentManager.apply.conflictsTitle": "競合",
|
||||
"agentManager.apply.unknownFile": "未解決のファイル",
|
||||
"agentManager.apply.reason.index": "ローカルファイルが期待されるバージョンと異なります",
|
||||
"agentManager.apply.reason.patch": "パッチをクリーンに適用できません",
|
||||
"agentManager.apply.reason.contents": "現在のローカルファイルの内容を読み取れません",
|
||||
"agentManager.apply.reason.unknown": "競合が検出されました",
|
||||
"agentManager.apply.inline.success": "適用済み",
|
||||
"agentManager.apply.inline.conflict": "競合",
|
||||
"agentManager.apply.inline.error": "失敗",
|
||||
"agentManager.shortcuts.toggleDiff": "差分パネルを切り替え",
|
||||
"agentManager.shortcuts.category.quickSwitch": "クイック切り替え",
|
||||
"agentManager.shortcuts.jumpToItem": "項目 1\u20139 に移動",
|
||||
"agentManager.review.sendAllToChat": "すべてをチャットに送信",
|
||||
"agentManager.review.sendAllToChatWithCount": "すべてをチャットに送信 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "{{line}} 行目にコメント",
|
||||
"agentManager.review.editCommentOnLine": "{{line}} 行目のコメントを編集",
|
||||
"agentManager.review.commentPlaceholder": "コメントを入力...",
|
||||
"agentManager.review.commentAction": "コメント",
|
||||
"agentManager.review.sendToChat": "チャットに送信",
|
||||
"agentManager.review.collapsedOnly": "{{count}} 件折りたたみ",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} 件折りたたみ、{{large}} 件がサイズ大",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "PR URLを貼り付け...",
|
||||
"agentManager.import.open": "開く",
|
||||
"agentManager.import.branches": "ブランチ",
|
||||
"agentManager.import.selectBranch": "ブランチを選択...",
|
||||
"agentManager.import.loading": "読み込み中...",
|
||||
"agentManager.import.loadingBranches": "ブランチを読み込み中...",
|
||||
"agentManager.import.noMatchingBranches": "一致するブランチがありません",
|
||||
"agentManager.import.noBranchesFound": "ブランチが見つかりません。",
|
||||
"agentManager.import.noBranchesHint": "上にPR URLを貼り付けるか、新しいWorktreeを作成してください。",
|
||||
"agentManager.import.failed": "インポートに失敗しました",
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "로컬",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "세션",
|
||||
"agentManager.notGitRepo": "git 저장소가 아닙니다",
|
||||
"agentManager.worktree.settings": "Worktree 설정",
|
||||
"agentManager.worktree.new": "새 Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree 설정 스크립트",
|
||||
"agentManager.worktree.delete": "Worktree 삭제",
|
||||
"agentManager.worktree.stale": "오래됨",
|
||||
"agentManager.worktree.staleTooltip": "디스크에 없거나 더 이상 git worktree에서 추적되지 않습니다",
|
||||
"agentManager.worktree.removeStale": "오래된 Worktree 제거",
|
||||
"agentManager.worktree.doubleClickRename": "더블 클릭하여 이름 변경",
|
||||
"agentManager.worktree.versions": "{{count}}개 버전",
|
||||
"agentManager.worktree.advancedOptions": "Worktree 고급 옵션",
|
||||
"agentManager.hoverCard.branch": "브랜치",
|
||||
"agentManager.hoverCard.base": "베이스",
|
||||
"agentManager.hoverCard.sessions": "세션",
|
||||
"agentManager.hoverCard.files": "파일",
|
||||
"agentManager.hoverCard.changes": "변경 사항",
|
||||
"agentManager.hoverCard.commits": "커밋",
|
||||
"agentManager.session.new": "새 세션",
|
||||
"agentManager.session.untitled": "제목 없음",
|
||||
"agentManager.session.newSession": "새 세션",
|
||||
"agentManager.session.openInWorktree": "Worktree에서 열기",
|
||||
"agentManager.session.readonly": "읽기 전용 세션",
|
||||
"agentManager.session.noSessions": "열린 세션 없음",
|
||||
"agentManager.tab.close": "닫기",
|
||||
"agentManager.tab.closeTab": "탭 닫기",
|
||||
"agentManager.tab.terminal": "터미널",
|
||||
"agentManager.tab.openTerminal": "터미널 열기",
|
||||
"agentManager.setup.failed": "워크스페이스 설정 실패",
|
||||
"agentManager.setup.settingUp": "워크스페이스 설정 중",
|
||||
"agentManager.shortcuts.title": "키보드 단축키",
|
||||
"agentManager.shortcuts.category.sidebar": "사이드바",
|
||||
"agentManager.shortcuts.category.tabs": "탭",
|
||||
"agentManager.shortcuts.category.terminal": "터미널",
|
||||
"agentManager.shortcuts.category.global": "전역",
|
||||
"agentManager.shortcuts.previousItem": "이전 항목",
|
||||
"agentManager.shortcuts.nextItem": "다음 항목",
|
||||
"agentManager.shortcuts.newWorktree": "새 Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "고급 Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Worktree 삭제",
|
||||
"agentManager.shortcuts.previousTab": "이전 탭",
|
||||
"agentManager.shortcuts.nextTab": "다음 탭",
|
||||
"agentManager.shortcuts.newTab": "새 탭",
|
||||
"agentManager.shortcuts.closeTab": "탭 닫기",
|
||||
"agentManager.shortcuts.toggleTerminal": "터미널 전환",
|
||||
"agentManager.shortcuts.focusPanel": "패널 포커스",
|
||||
"agentManager.shortcuts.openAgentManager": "Agent Manager 열기",
|
||||
"agentManager.dialog.deleteWorktree.title": "Worktree 삭제",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Worktree 삭제 ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? 디스크에서 Worktree를 제거하고 모든 세션의 연결을 해제합니다.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "취소",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "삭제",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "오래된 Worktree 제거",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "오래된 Worktree 제거 ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? 이 작업은 Agent Manager 매핑만 제거하며 디스크의 파일은 변경하지 않습니다.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "취소",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "오래된 Worktree 제거",
|
||||
|
||||
"agentManager.dialog.openWorktree": "새 워크트리",
|
||||
"agentManager.dialog.tab.new": "새로 만들기",
|
||||
"agentManager.dialog.tab.import": "가져오기",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree 이름 (선택사항)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "메시지를 입력하세요 (⌘Enter로 전송)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "메시지를 입력하세요 (Ctrl+Enter로 전송)",
|
||||
"agentManager.dialog.advancedOptions": "고급 옵션",
|
||||
"agentManager.dialog.branchName": "브랜치 이름",
|
||||
"agentManager.dialog.branchNamePlaceholder": "자동 생성",
|
||||
"agentManager.dialog.baseBranch": "베이스 브랜치",
|
||||
"agentManager.dialog.searchBranches": "브랜치 검색...",
|
||||
"agentManager.dialog.branchBadge.default": "기본",
|
||||
"agentManager.dialog.branchBadge.remote": "원격",
|
||||
"agentManager.dialog.versions": "버전",
|
||||
"agentManager.dialog.versionHint": "{{count}}개의 Worktree가 병렬로 실행됩니다",
|
||||
"agentManager.dialog.compareModels": "모델 비교",
|
||||
"agentManager.dialog.compareModels.searchModels": "모델 검색...",
|
||||
"agentManager.dialog.creating": "생성 중...",
|
||||
"agentManager.dialog.createWorkspace": "워크트리 생성",
|
||||
"agentManager.dialog.removeImage": "이미지 제거",
|
||||
"agentManager.dialog.advanced": "고급...",
|
||||
|
||||
"agentManager.diff.toggle": "차이점 전환",
|
||||
"agentManager.diff.openFile": "파일 열기",
|
||||
"agentManager.apply.button": "로컬에 적용",
|
||||
"agentManager.apply.globalButton": "적용",
|
||||
"agentManager.apply.tooltip": "선택한 워크트리 변경사항을 로컬 브랜치에 적용",
|
||||
"agentManager.apply.dialogTitle": "로컬 브랜치에 변경사항 적용",
|
||||
"agentManager.apply.confirm": "지금 적용",
|
||||
"agentManager.apply.retry": "적용 재시도",
|
||||
"agentManager.apply.previewTitle": "이 변경사항을 로컬 브랜치에 적용하시겠습니까?",
|
||||
"agentManager.apply.previewSummary": "{{files}}개 파일, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{total}}개 파일 중 {{selected}}개 선택됨",
|
||||
"agentManager.apply.selectAll": "모두 선택",
|
||||
"agentManager.apply.selectNone": "선택 해제",
|
||||
"agentManager.apply.moreFiles": "+{{count}}개 더",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}}개 더)",
|
||||
"agentManager.apply.checking": "확인 중...",
|
||||
"agentManager.apply.applying": "적용 중...",
|
||||
"agentManager.apply.success": "변경사항이 적용되었습니다",
|
||||
"agentManager.apply.conflict": "적용 시 충돌이 있습니다",
|
||||
"agentManager.apply.conflictToast":
|
||||
"{{files}}개 파일에서 {{count}}개 충돌이 발생했습니다. 적용에서 세부 정보를 확인하세요.",
|
||||
"agentManager.apply.error": "적용 실패",
|
||||
"agentManager.apply.conflictsTitle": "충돌",
|
||||
"agentManager.apply.unknownFile": "미해결 파일",
|
||||
"agentManager.apply.reason.index": "로컬 파일이 예상 버전과 다릅니다",
|
||||
"agentManager.apply.reason.patch": "패치를 깨끗하게 적용할 수 없습니다",
|
||||
"agentManager.apply.reason.contents": "현재 로컬 파일 내용을 읽을 수 없습니다",
|
||||
"agentManager.apply.reason.unknown": "충돌이 감지되었습니다",
|
||||
"agentManager.apply.inline.success": "적용됨",
|
||||
"agentManager.apply.inline.conflict": "충돌",
|
||||
"agentManager.apply.inline.error": "실패",
|
||||
"agentManager.shortcuts.toggleDiff": "차이점 패널 전환",
|
||||
"agentManager.shortcuts.category.quickSwitch": "빠른 전환",
|
||||
"agentManager.shortcuts.jumpToItem": "항목 1\u20139(으)로 이동",
|
||||
"agentManager.review.sendAllToChat": "모두 채팅으로 보내기",
|
||||
"agentManager.review.sendAllToChatWithCount": "모두 채팅으로 보내기 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "{{line}}줄에 댓글",
|
||||
"agentManager.review.editCommentOnLine": "{{line}}줄 댓글 편집",
|
||||
"agentManager.review.commentPlaceholder": "댓글을 남기세요...",
|
||||
"agentManager.review.commentAction": "댓글",
|
||||
"agentManager.review.sendToChat": "채팅으로 보내기",
|
||||
"agentManager.review.collapsedOnly": "{{count}}개 접힘",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}}개 접힘, {{large}}개 대용량",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "PR URL 붙여넣기...",
|
||||
"agentManager.import.open": "열기",
|
||||
"agentManager.import.branches": "브랜치",
|
||||
"agentManager.import.selectBranch": "브랜치 선택...",
|
||||
"agentManager.import.loading": "로딩 중...",
|
||||
"agentManager.import.loadingBranches": "브랜치 로딩 중...",
|
||||
"agentManager.import.noMatchingBranches": "일치하는 브랜치 없음",
|
||||
"agentManager.import.noBranchesFound": "브랜치를 찾을 수 없습니다.",
|
||||
"agentManager.import.noBranchesHint": "위에 PR URL을 붙여넣거나 새 Worktree를 만드세요.",
|
||||
"agentManager.import.failed": "가져오기 실패",
|
||||
}
|
||||
@@ -0,0 +1,142 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "lokal",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "ØKTER",
|
||||
"agentManager.notGitRepo": "Ikke et git-repositorium",
|
||||
"agentManager.worktree.settings": "Worktree-innstillinger",
|
||||
"agentManager.worktree.new": "Nytt Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree-oppsettskript",
|
||||
"agentManager.worktree.delete": "Slett Worktree",
|
||||
"agentManager.worktree.stale": "Utdatert",
|
||||
"agentManager.worktree.staleTooltip": "Mangler på disken eller spores ikke lenger av git worktree",
|
||||
"agentManager.worktree.removeStale": "Fjern utdatert Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Dobbeltklikk for å gi nytt navn",
|
||||
"agentManager.worktree.versions": "{{count}} versjoner",
|
||||
"agentManager.worktree.advancedOptions": "Avanserte Worktree-alternativer",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Økter",
|
||||
"agentManager.hoverCard.files": "Filer",
|
||||
"agentManager.hoverCard.changes": "Endringer",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Ny økt",
|
||||
"agentManager.session.untitled": "Uten tittel",
|
||||
"agentManager.session.newSession": "Ny økt",
|
||||
"agentManager.session.openInWorktree": "Åpne i Worktree",
|
||||
"agentManager.session.readonly": "Skrivebeskyttet økt",
|
||||
"agentManager.session.noSessions": "Ingen åpne økter",
|
||||
"agentManager.tab.close": "Lukk",
|
||||
"agentManager.tab.closeTab": "Lukk fane",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Åpne Terminal",
|
||||
"agentManager.setup.failed": "Oppsett av arbeidsområde mislyktes",
|
||||
"agentManager.setup.settingUp": "Setter opp arbeidsområde",
|
||||
"agentManager.shortcuts.title": "Tastatursnarveier",
|
||||
"agentManager.shortcuts.category.sidebar": "Sidepanel",
|
||||
"agentManager.shortcuts.category.tabs": "Faner",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Forrige element",
|
||||
"agentManager.shortcuts.nextItem": "Neste element",
|
||||
"agentManager.shortcuts.newWorktree": "Nytt Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Avansert Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Slett Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Forrige fane",
|
||||
"agentManager.shortcuts.nextTab": "Neste fane",
|
||||
"agentManager.shortcuts.newTab": "Ny fane",
|
||||
"agentManager.shortcuts.closeTab": "Lukk fane",
|
||||
"agentManager.shortcuts.toggleTerminal": "Veksle terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokuser panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Åpne Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Slett Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Slett Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Dette fjerner Worktree fra disken og kobler fra alle økter.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Avbryt",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Slett",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Fjern utdatert Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Fjern utdatert Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Dette fjerner bare koblingen i Agent Manager og lar filene på disken være urørt.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Avbryt",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Fjern utdatert Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Ny worktree",
|
||||
"agentManager.dialog.tab.new": "Ny",
|
||||
"agentManager.dialog.tab.import": "Importer",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree-navn (valgfritt)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Skriv en melding (⌘Enter for å sende)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Skriv en melding (Ctrl+Enter for å sende)",
|
||||
"agentManager.dialog.advancedOptions": "Avanserte alternativer",
|
||||
"agentManager.dialog.branchName": "Branch-navn",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatisk generert",
|
||||
"agentManager.dialog.baseBranch": "Base-branch",
|
||||
"agentManager.dialog.searchBranches": "Søk branches...",
|
||||
"agentManager.dialog.branchBadge.default": "standard",
|
||||
"agentManager.dialog.branchBadge.remote": "fjern",
|
||||
"agentManager.dialog.versions": "Versjoner",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees vil kjøre parallelt",
|
||||
"agentManager.dialog.compareModels": "Sammenlign modeller",
|
||||
"agentManager.dialog.compareModels.searchModels": "Søk modeller...",
|
||||
"agentManager.dialog.creating": "Oppretter...",
|
||||
"agentManager.dialog.createWorkspace": "Opprett worktree",
|
||||
"agentManager.dialog.removeImage": "Fjern bilde",
|
||||
"agentManager.dialog.advanced": "Avansert...",
|
||||
|
||||
"agentManager.diff.toggle": "Veksle diff",
|
||||
"agentManager.diff.openFile": "Åpne fil",
|
||||
"agentManager.apply.button": "Bruk lokalt",
|
||||
"agentManager.apply.globalButton": "Bruk",
|
||||
"agentManager.apply.tooltip": "Bruk valgte worktree-endringer på den lokale grenen",
|
||||
"agentManager.apply.dialogTitle": "Bruk endringer på den lokale grenen",
|
||||
"agentManager.apply.confirm": "Bruk nå",
|
||||
"agentManager.apply.retry": "Prøv å bruke på nytt",
|
||||
"agentManager.apply.previewTitle": "Bruke disse endringene på den lokale grenen?",
|
||||
"agentManager.apply.previewSummary": "{{files}} filer, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} av {{total}} filer valgt",
|
||||
"agentManager.apply.selectAll": "Velg alle",
|
||||
"agentManager.apply.selectNone": "Velg ingen",
|
||||
"agentManager.apply.moreFiles": "+{{count}} flere",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} flere)",
|
||||
"agentManager.apply.checking": "Sjekker...",
|
||||
"agentManager.apply.applying": "Bruker...",
|
||||
"agentManager.apply.success": "Endringer brukt",
|
||||
"agentManager.apply.conflict": "Bruk har konflikter",
|
||||
"agentManager.apply.conflictToast": "{{count}} konflikter i {{files}} filer. Se detaljer i Bruk.",
|
||||
"agentManager.apply.error": "Bruk mislyktes",
|
||||
"agentManager.apply.conflictsTitle": "Konflikter",
|
||||
"agentManager.apply.unknownFile": "Uløst fil",
|
||||
"agentManager.apply.reason.index": "Lokal fil skiller seg fra forventet versjon",
|
||||
"agentManager.apply.reason.patch": "Patch kan ikke brukes rent",
|
||||
"agentManager.apply.reason.contents": "Kan ikke lese innholdet i gjeldende lokal fil",
|
||||
"agentManager.apply.reason.unknown": "Konflikt oppdaget",
|
||||
"agentManager.apply.inline.success": "Brukt",
|
||||
"agentManager.apply.inline.conflict": "Konflikter",
|
||||
"agentManager.apply.inline.error": "Mislyktes",
|
||||
"agentManager.shortcuts.toggleDiff": "Veksle diff-panel",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Hurtigbytte",
|
||||
"agentManager.shortcuts.jumpToItem": "Hopp til element 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Send alt til chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Send alt til chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Kommenter på linje {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Rediger kommentar på linje {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Legg igjen en kommentar...",
|
||||
"agentManager.review.commentAction": "Kommenter",
|
||||
"agentManager.review.sendToChat": "Send til chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} kollapset",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} kollapset, {{large}} store",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Lim inn PR URL...",
|
||||
"agentManager.import.open": "Åpne",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Velg branch...",
|
||||
"agentManager.import.loading": "Laster...",
|
||||
"agentManager.import.loadingBranches": "Laster branches...",
|
||||
"agentManager.import.noMatchingBranches": "Ingen matchende branches",
|
||||
"agentManager.import.noBranchesFound": "Ingen branches funnet.",
|
||||
"agentManager.import.noBranchesHint": "Lim inn en PR URL ovenfor eller opprett et nytt Worktree.",
|
||||
"agentManager.import.failed": "Import mislyktes",
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "lokalne",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESJE",
|
||||
"agentManager.notGitRepo": "Nie jest repozytorium git",
|
||||
"agentManager.worktree.settings": "Ustawienia Worktree",
|
||||
"agentManager.worktree.new": "Nowy Worktree",
|
||||
"agentManager.worktree.setupScript": "Skrypt konfiguracji Worktree",
|
||||
"agentManager.worktree.delete": "Usuń Worktree",
|
||||
"agentManager.worktree.stale": "Nieaktualny",
|
||||
"agentManager.worktree.staleTooltip": "Brak na dysku lub nie jest już śledzony przez git worktree",
|
||||
"agentManager.worktree.removeStale": "Usuń nieaktualny Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Kliknij dwukrotnie, aby zmienić nazwę",
|
||||
"agentManager.worktree.versions": "{{count}} wersji",
|
||||
"agentManager.worktree.advancedOptions": "Zaawansowane opcje Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Baza",
|
||||
"agentManager.hoverCard.sessions": "Sesje",
|
||||
"agentManager.hoverCard.files": "Pliki",
|
||||
"agentManager.hoverCard.changes": "Zmiany",
|
||||
"agentManager.hoverCard.commits": "Commity",
|
||||
"agentManager.session.new": "Nowa sesja",
|
||||
"agentManager.session.untitled": "Bez tytułu",
|
||||
"agentManager.session.newSession": "Nowa sesja",
|
||||
"agentManager.session.openInWorktree": "Otwórz w Worktree",
|
||||
"agentManager.session.readonly": "Sesja tylko do odczytu",
|
||||
"agentManager.session.noSessions": "Brak otwartych sesji",
|
||||
"agentManager.tab.close": "Zamknij",
|
||||
"agentManager.tab.closeTab": "Zamknij kartę",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Otwórz Terminal",
|
||||
"agentManager.setup.failed": "Konfiguracja workspace nie powiodła się",
|
||||
"agentManager.setup.settingUp": "Konfigurowanie workspace",
|
||||
"agentManager.shortcuts.title": "Skróty klawiszowe",
|
||||
"agentManager.shortcuts.category.sidebar": "Pasek boczny",
|
||||
"agentManager.shortcuts.category.tabs": "Karty",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Globalne",
|
||||
"agentManager.shortcuts.previousItem": "Poprzedni element",
|
||||
"agentManager.shortcuts.nextItem": "Następny element",
|
||||
"agentManager.shortcuts.newWorktree": "Nowy Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Zaawansowany Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Usuń Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Poprzednia karta",
|
||||
"agentManager.shortcuts.nextTab": "Następna karta",
|
||||
"agentManager.shortcuts.newTab": "Nowa karta",
|
||||
"agentManager.shortcuts.closeTab": "Zamknij kartę",
|
||||
"agentManager.shortcuts.toggleTerminal": "Przełącz terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokus na panelu",
|
||||
"agentManager.shortcuts.openAgentManager": "Otwórz Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Usuń Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Usunąć Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? Spowoduje to usunięcie Worktree z dysku i odłączenie wszystkich sesji.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Anuluj",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Usuń",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Usuń nieaktualny Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Usunąć nieaktualny Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? To usunie tylko mapowanie w Agent Manager i nie zmieni plików na dysku.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Anuluj",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Usuń nieaktualny Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Nowy Worktree",
|
||||
"agentManager.dialog.tab.new": "Nowy",
|
||||
"agentManager.dialog.tab.import": "Importuj",
|
||||
"agentManager.dialog.namePlaceholder": "Nazwa Worktree (opcjonalnie)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Wpisz wiadomość (⌘Enter aby wysłać)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Wpisz wiadomość (Ctrl+Enter aby wysłać)",
|
||||
"agentManager.dialog.advancedOptions": "Opcje zaawansowane",
|
||||
"agentManager.dialog.branchName": "Nazwa brancha",
|
||||
"agentManager.dialog.branchNamePlaceholder": "generowana automatycznie",
|
||||
"agentManager.dialog.baseBranch": "Branch bazowy",
|
||||
"agentManager.dialog.searchBranches": "Szukaj branchy...",
|
||||
"agentManager.dialog.branchBadge.default": "domyślny",
|
||||
"agentManager.dialog.branchBadge.remote": "zdalny",
|
||||
"agentManager.dialog.versions": "Wersje",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktree będą działać równolegle",
|
||||
"agentManager.dialog.compareModels": "Porównaj modele",
|
||||
"agentManager.dialog.compareModels.searchModels": "Szukaj modeli...",
|
||||
"agentManager.dialog.creating": "Tworzenie...",
|
||||
"agentManager.dialog.createWorkspace": "Utwórz Worktree",
|
||||
"agentManager.dialog.removeImage": "Usuń obraz",
|
||||
"agentManager.dialog.advanced": "Zaawansowane...",
|
||||
|
||||
"agentManager.diff.toggle": "Przełącz diff",
|
||||
"agentManager.diff.openFile": "Otwórz plik",
|
||||
"agentManager.apply.button": "Zastosuj lokalnie",
|
||||
"agentManager.apply.globalButton": "Zastosuj",
|
||||
"agentManager.apply.tooltip": "Zastosuj wybrane zmiany worktree na lokalnej gałęzi",
|
||||
"agentManager.apply.dialogTitle": "Zastosuj zmiany na lokalnej gałęzi",
|
||||
"agentManager.apply.confirm": "Zastosuj teraz",
|
||||
"agentManager.apply.retry": "Ponów zastosowanie",
|
||||
"agentManager.apply.previewTitle": "Zastosować te zmiany na lokalnej gałęzi?",
|
||||
"agentManager.apply.previewSummary": "{{files}} plików, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} z {{total}} plików wybranych",
|
||||
"agentManager.apply.selectAll": "Zaznacz wszystkie",
|
||||
"agentManager.apply.selectNone": "Odznacz wszystkie",
|
||||
"agentManager.apply.moreFiles": "+{{count}} więcej",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} więcej)",
|
||||
"agentManager.apply.checking": "Sprawdzanie...",
|
||||
"agentManager.apply.applying": "Stosowanie...",
|
||||
"agentManager.apply.success": "Zmiany zastosowane",
|
||||
"agentManager.apply.conflict": "Zastosowanie zawiera konflikty",
|
||||
"agentManager.apply.conflictToast": "{{count}} konfliktów w {{files}} plikach. Sprawdź szczegóły w Zastosuj.",
|
||||
"agentManager.apply.error": "Zastosowanie nie powiodło się",
|
||||
"agentManager.apply.conflictsTitle": "Konflikty",
|
||||
"agentManager.apply.unknownFile": "Nierozwiązany plik",
|
||||
"agentManager.apply.reason.index": "Plik lokalny różni się od oczekiwanej wersji",
|
||||
"agentManager.apply.reason.patch": "Łatka nie może być zastosowana czysto",
|
||||
"agentManager.apply.reason.contents": "Nie można odczytać zawartości bieżącego pliku lokalnego",
|
||||
"agentManager.apply.reason.unknown": "Wykryto konflikt",
|
||||
"agentManager.apply.inline.success": "Zastosowano",
|
||||
"agentManager.apply.inline.conflict": "Konflikty",
|
||||
"agentManager.apply.inline.error": "Błąd",
|
||||
"agentManager.shortcuts.toggleDiff": "Przełącz panel diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Szybkie przełączanie",
|
||||
"agentManager.shortcuts.jumpToItem": "Przejdź do elementu 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Wyślij wszystko do czatu",
|
||||
"agentManager.review.sendAllToChatWithCount": "Wyślij wszystko do czatu ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Skomentuj linię {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Edytuj komentarz do linii {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Zostaw komentarz...",
|
||||
"agentManager.review.commentAction": "Komentuj",
|
||||
"agentManager.review.sendToChat": "Wyślij do czatu",
|
||||
"agentManager.review.collapsedOnly": "{{count}} zwiniętych",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} zwiniętych, {{large}} dużych",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Wklej URL PR...",
|
||||
"agentManager.import.open": "Otwórz",
|
||||
"agentManager.import.branches": "Branche",
|
||||
"agentManager.import.selectBranch": "Wybierz branch...",
|
||||
"agentManager.import.loading": "Ładowanie...",
|
||||
"agentManager.import.loadingBranches": "Ładowanie branchy...",
|
||||
"agentManager.import.noMatchingBranches": "Brak pasujących branchy",
|
||||
"agentManager.import.noBranchesFound": "Nie znaleziono branchy.",
|
||||
"agentManager.import.noBranchesHint": "Wklej URL PR powyżej lub utwórz nowy Worktree.",
|
||||
"agentManager.import.failed": "Import nie powiódł się",
|
||||
}
|
||||
@@ -0,0 +1,142 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "локальный",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "СЕССИИ",
|
||||
"agentManager.notGitRepo": "Не является git-репозиторием",
|
||||
"agentManager.worktree.settings": "Настройки Worktree",
|
||||
"agentManager.worktree.new": "Новый Worktree",
|
||||
"agentManager.worktree.setupScript": "Скрипт настройки Worktree",
|
||||
"agentManager.worktree.delete": "Удалить Worktree",
|
||||
"agentManager.worktree.stale": "Устаревший",
|
||||
"agentManager.worktree.staleTooltip": "Отсутствует на диске или больше не отслеживается git worktree",
|
||||
"agentManager.worktree.removeStale": "Удалить устаревший Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Двойной клик для переименования",
|
||||
"agentManager.worktree.versions": "{{count}} версий",
|
||||
"agentManager.worktree.advancedOptions": "Расширенные настройки Worktree",
|
||||
"agentManager.hoverCard.branch": "ВЕТКА",
|
||||
"agentManager.hoverCard.base": "Основа",
|
||||
"agentManager.hoverCard.sessions": "Сессии",
|
||||
"agentManager.hoverCard.files": "Файлы",
|
||||
"agentManager.hoverCard.changes": "Изменения",
|
||||
"agentManager.hoverCard.commits": "Коммиты",
|
||||
"agentManager.session.new": "Новая сессия",
|
||||
"agentManager.session.untitled": "Без названия",
|
||||
"agentManager.session.newSession": "Новая сессия",
|
||||
"agentManager.session.openInWorktree": "Открыть в Worktree",
|
||||
"agentManager.session.readonly": "Сессия только для чтения",
|
||||
"agentManager.session.noSessions": "Нет открытых сессий",
|
||||
"agentManager.tab.close": "Закрыть",
|
||||
"agentManager.tab.closeTab": "Закрыть вкладку",
|
||||
"agentManager.tab.terminal": "Терминал",
|
||||
"agentManager.tab.openTerminal": "Открыть терминал",
|
||||
"agentManager.setup.failed": "Не удалось настроить рабочее пространство",
|
||||
"agentManager.setup.settingUp": "Настройка рабочего пространства",
|
||||
"agentManager.shortcuts.title": "Сочетания клавиш",
|
||||
"agentManager.shortcuts.category.sidebar": "Боковая панель",
|
||||
"agentManager.shortcuts.category.tabs": "Вкладки",
|
||||
"agentManager.shortcuts.category.terminal": "Терминал",
|
||||
"agentManager.shortcuts.category.global": "Глобальные",
|
||||
"agentManager.shortcuts.previousItem": "Предыдущий элемент",
|
||||
"agentManager.shortcuts.nextItem": "Следующий элемент",
|
||||
"agentManager.shortcuts.newWorktree": "Новый Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Расширенный Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Удалить Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Предыдущая вкладка",
|
||||
"agentManager.shortcuts.nextTab": "Следующая вкладка",
|
||||
"agentManager.shortcuts.newTab": "Новая вкладка",
|
||||
"agentManager.shortcuts.closeTab": "Закрыть вкладку",
|
||||
"agentManager.shortcuts.toggleTerminal": "Переключить терминал",
|
||||
"agentManager.shortcuts.focusPanel": "Фокус на панели",
|
||||
"agentManager.shortcuts.openAgentManager": "Открыть Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Удалить Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Удалить Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Это удалит Worktree с диска и отключит все сессии.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Отмена",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Удалить",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Удалить устаревший Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Удалить устаревший Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Это удалит только привязку в Agent Manager и не затронет файлы на диске.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Отмена",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Удалить устаревший Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Новый worktree",
|
||||
"agentManager.dialog.tab.new": "Новый",
|
||||
"agentManager.dialog.tab.import": "Импорт",
|
||||
"agentManager.dialog.namePlaceholder": "Имя Worktree (необязательно)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Введите сообщение (⌘Enter для отправки)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Введите сообщение (Ctrl+Enter для отправки)",
|
||||
"agentManager.dialog.advancedOptions": "Расширенные параметры",
|
||||
"agentManager.dialog.branchName": "Имя ветки",
|
||||
"agentManager.dialog.branchNamePlaceholder": "генерируется автоматически",
|
||||
"agentManager.dialog.baseBranch": "Базовая ветка",
|
||||
"agentManager.dialog.searchBranches": "Поиск веток...",
|
||||
"agentManager.dialog.branchBadge.default": "по умолчанию",
|
||||
"agentManager.dialog.branchBadge.remote": "удалённая",
|
||||
"agentManager.dialog.versions": "Версии",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktree будут выполняться параллельно",
|
||||
"agentManager.dialog.compareModels": "Сравнить модели",
|
||||
"agentManager.dialog.compareModels.searchModels": "Поиск моделей...",
|
||||
"agentManager.dialog.creating": "Создание...",
|
||||
"agentManager.dialog.createWorkspace": "Создать worktree",
|
||||
"agentManager.dialog.removeImage": "Удалить изображение",
|
||||
"agentManager.dialog.advanced": "Дополнительно...",
|
||||
|
||||
"agentManager.diff.toggle": "Переключить diff",
|
||||
"agentManager.diff.openFile": "Открыть файл",
|
||||
"agentManager.apply.button": "Применить локально",
|
||||
"agentManager.apply.globalButton": "Применить",
|
||||
"agentManager.apply.tooltip": "Применить изменения выбранного рабочего дерева к локальной ветке",
|
||||
"agentManager.apply.dialogTitle": "Применить изменения к локальной ветке",
|
||||
"agentManager.apply.confirm": "Применить сейчас",
|
||||
"agentManager.apply.retry": "Повторить применение",
|
||||
"agentManager.apply.previewTitle": "Применить эти изменения к локальной ветке?",
|
||||
"agentManager.apply.previewSummary": "{{files}} файлов, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} из {{total}} файлов выбрано",
|
||||
"agentManager.apply.selectAll": "Выбрать все",
|
||||
"agentManager.apply.selectNone": "Снять выделение",
|
||||
"agentManager.apply.moreFiles": "+{{count}} ещё",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} ещё)",
|
||||
"agentManager.apply.checking": "Проверка...",
|
||||
"agentManager.apply.applying": "Применение...",
|
||||
"agentManager.apply.success": "Изменения применены",
|
||||
"agentManager.apply.conflict": "Применение содержит конфликты",
|
||||
"agentManager.apply.conflictToast": "{{count}} конфликтов в {{files}} файлах. Проверьте детали в Применить.",
|
||||
"agentManager.apply.error": "Применение не удалось",
|
||||
"agentManager.apply.conflictsTitle": "Конфликты",
|
||||
"agentManager.apply.unknownFile": "Неразрешённый файл",
|
||||
"agentManager.apply.reason.index": "Локальный файл отличается от ожидаемой версии",
|
||||
"agentManager.apply.reason.patch": "Патч не может быть применён чисто",
|
||||
"agentManager.apply.reason.contents": "Не удаётся прочитать содержимое текущего локального файла",
|
||||
"agentManager.apply.reason.unknown": "Обнаружен конфликт",
|
||||
"agentManager.apply.inline.success": "Применено",
|
||||
"agentManager.apply.inline.conflict": "Конфликты",
|
||||
"agentManager.apply.inline.error": "Ошибка",
|
||||
"agentManager.shortcuts.toggleDiff": "Переключить панель diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Быстрое переключение",
|
||||
"agentManager.shortcuts.jumpToItem": "Перейти к элементу 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Отправить всё в чат",
|
||||
"agentManager.review.sendAllToChatWithCount": "Отправить всё в чат ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Комментарий к строке {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Редактировать комментарий к строке {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Оставьте комментарий...",
|
||||
"agentManager.review.commentAction": "Комментировать",
|
||||
"agentManager.review.sendToChat": "Отправить в чат",
|
||||
"agentManager.review.collapsedOnly": "{{count}} свернуто",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} свернуто, {{large}} больших",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Вставьте URL PR...",
|
||||
"agentManager.import.open": "Открыть",
|
||||
"agentManager.import.branches": "Ветки",
|
||||
"agentManager.import.selectBranch": "Выберите ветку...",
|
||||
"agentManager.import.loading": "Загрузка...",
|
||||
"agentManager.import.loadingBranches": "Загрузка веток...",
|
||||
"agentManager.import.noMatchingBranches": "Нет подходящих веток",
|
||||
"agentManager.import.noBranchesFound": "Ветки не найдены.",
|
||||
"agentManager.import.noBranchesHint": "Вставьте URL PR выше или создайте новый Worktree.",
|
||||
"agentManager.import.failed": "Ошибка импорта",
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "ในเครื่อง",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "เซสชัน",
|
||||
"agentManager.notGitRepo": "ไม่ใช่ git repository",
|
||||
"agentManager.worktree.settings": "ตั้งค่า Worktree",
|
||||
"agentManager.worktree.new": "Worktree ใหม่",
|
||||
"agentManager.worktree.setupScript": "สคริปต์ตั้งค่า Worktree",
|
||||
"agentManager.worktree.delete": "ลบ Worktree",
|
||||
"agentManager.worktree.stale": "ล้าสมัย",
|
||||
"agentManager.worktree.staleTooltip": "ไม่พบบนดิสก์หรือไม่ได้ถูกติดตามโดย git worktree อีกต่อไป",
|
||||
"agentManager.worktree.removeStale": "ลบ Worktree ที่ล้าสมัย",
|
||||
"agentManager.worktree.doubleClickRename": "ดับเบิลคลิกเพื่อเปลี่ยนชื่อ",
|
||||
"agentManager.worktree.versions": "{{count}} เวอร์ชัน",
|
||||
"agentManager.worktree.advancedOptions": "ตัวเลือก Worktree ขั้นสูง",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "ฐาน",
|
||||
"agentManager.hoverCard.sessions": "เซสชัน",
|
||||
"agentManager.hoverCard.files": "ไฟล์",
|
||||
"agentManager.hoverCard.changes": "การเปลี่ยนแปลง",
|
||||
"agentManager.hoverCard.commits": "คอมมิต",
|
||||
"agentManager.session.new": "เซสชันใหม่",
|
||||
"agentManager.session.untitled": "ไม่มีชื่อ",
|
||||
"agentManager.session.newSession": "เซสชันใหม่",
|
||||
"agentManager.session.openInWorktree": "เปิดใน Worktree",
|
||||
"agentManager.session.readonly": "เซสชันอ่านอย่างเดียว",
|
||||
"agentManager.session.noSessions": "ไม่มีเซสชันที่เปิดอยู่",
|
||||
"agentManager.tab.close": "ปิด",
|
||||
"agentManager.tab.closeTab": "ปิดแท็บ",
|
||||
"agentManager.tab.terminal": "เทอร์มินัล",
|
||||
"agentManager.tab.openTerminal": "เปิดเทอร์มินัล",
|
||||
"agentManager.setup.failed": "ตั้งค่า Workspace ล้มเหลว",
|
||||
"agentManager.setup.settingUp": "กำลังตั้งค่า Workspace",
|
||||
"agentManager.shortcuts.title": "ปุ่มลัดแป้นพิมพ์",
|
||||
"agentManager.shortcuts.category.sidebar": "แถบด้านข้าง",
|
||||
"agentManager.shortcuts.category.tabs": "แท็บ",
|
||||
"agentManager.shortcuts.category.terminal": "เทอร์มินัล",
|
||||
"agentManager.shortcuts.category.global": "ทั่วไป",
|
||||
"agentManager.shortcuts.previousItem": "รายการก่อนหน้า",
|
||||
"agentManager.shortcuts.nextItem": "รายการถัดไป",
|
||||
"agentManager.shortcuts.newWorktree": "Worktree ใหม่",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree ขั้นสูง",
|
||||
"agentManager.shortcuts.deleteWorktree": "ลบ Worktree",
|
||||
"agentManager.shortcuts.previousTab": "แท็บก่อนหน้า",
|
||||
"agentManager.shortcuts.nextTab": "แท็บถัดไป",
|
||||
"agentManager.shortcuts.newTab": "แท็บใหม่",
|
||||
"agentManager.shortcuts.closeTab": "ปิดแท็บ",
|
||||
"agentManager.shortcuts.toggleTerminal": "สลับเทอร์มินัล",
|
||||
"agentManager.shortcuts.focusPanel": "โฟกัสแผง",
|
||||
"agentManager.shortcuts.openAgentManager": "เปิด Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "ลบ Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "ลบ Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? การดำเนินการนี้จะลบ Worktree ออกจากดิสก์และยกเลิกการเชื่อมโยงเซสชันทั้งหมด",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "ยกเลิก",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "ลบ",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "ลบ Worktree ที่ล้าสมัย",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "ลบ Worktree ที่ล้าสมัย ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? การดำเนินการนี้จะลบเฉพาะการแมปใน Agent Manager และจะไม่แตะไฟล์บนดิสก์",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "ยกเลิก",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "ลบ Worktree ที่ล้าสมัย",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Worktree ใหม่",
|
||||
"agentManager.dialog.tab.new": "ใหม่",
|
||||
"agentManager.dialog.tab.import": "นำเข้า",
|
||||
"agentManager.dialog.namePlaceholder": "ชื่อ Worktree (ไม่บังคับ)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "พิมพ์ข้อความ (⌘Enter เพื่อส่ง)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "พิมพ์ข้อความ (Ctrl+Enter เพื่อส่ง)",
|
||||
"agentManager.dialog.advancedOptions": "ตัวเลือกขั้นสูง",
|
||||
"agentManager.dialog.branchName": "ชื่อ Branch",
|
||||
"agentManager.dialog.branchNamePlaceholder": "สร้างอัตโนมัติ",
|
||||
"agentManager.dialog.baseBranch": "Branch ฐาน",
|
||||
"agentManager.dialog.searchBranches": "ค้นหา Branch...",
|
||||
"agentManager.dialog.branchBadge.default": "ค่าเริ่มต้น",
|
||||
"agentManager.dialog.branchBadge.remote": "ระยะไกล",
|
||||
"agentManager.dialog.versions": "เวอร์ชัน",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktrees จะทำงานพร้อมกัน",
|
||||
"agentManager.dialog.compareModels": "เปรียบเทียบโมเดล",
|
||||
"agentManager.dialog.compareModels.searchModels": "ค้นหาโมเดล...",
|
||||
"agentManager.dialog.creating": "กำลังสร้าง...",
|
||||
"agentManager.dialog.createWorkspace": "สร้าง Worktree",
|
||||
"agentManager.dialog.removeImage": "ลบรูปภาพ",
|
||||
"agentManager.dialog.advanced": "ขั้นสูง...",
|
||||
|
||||
"agentManager.diff.toggle": "สลับ diff",
|
||||
"agentManager.diff.openFile": "เปิดไฟล์",
|
||||
"agentManager.apply.button": "นำไปใช้ในเครื่อง",
|
||||
"agentManager.apply.globalButton": "นำไปใช้",
|
||||
"agentManager.apply.tooltip": "นำการเปลี่ยนแปลงของ worktree ที่เลือกไปใช้กับสาขาในเครื่อง",
|
||||
"agentManager.apply.dialogTitle": "นำการเปลี่ยนแปลงไปใช้กับสาขาในเครื่อง",
|
||||
"agentManager.apply.confirm": "นำไปใช้ตอนนี้",
|
||||
"agentManager.apply.retry": "ลองนำไปใช้อีกครั้ง",
|
||||
"agentManager.apply.previewTitle": "นำการเปลี่ยนแปลงเหล่านี้ไปใช้กับสาขาในเครื่อง?",
|
||||
"agentManager.apply.previewSummary": "{{files}} ไฟล์, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "เลือก {{selected}} จาก {{total}} ไฟล์",
|
||||
"agentManager.apply.selectAll": "เลือกทั้งหมด",
|
||||
"agentManager.apply.selectNone": "ยกเลิกการเลือกทั้งหมด",
|
||||
"agentManager.apply.moreFiles": "+{{count}} เพิ่มเติม",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} เพิ่มเติม)",
|
||||
"agentManager.apply.checking": "กำลังตรวจสอบ...",
|
||||
"agentManager.apply.applying": "กำลังนำไปใช้...",
|
||||
"agentManager.apply.success": "นำการเปลี่ยนแปลงไปใช้แล้ว",
|
||||
"agentManager.apply.conflict": "การนำไปใช้มีข้อขัดแย้ง",
|
||||
"agentManager.apply.conflictToast": "{{count}} ข้อขัดแย้งใน {{files}} ไฟล์ ตรวจสอบรายละเอียดในนำไปใช้",
|
||||
"agentManager.apply.error": "การนำไปใช้ล้มเหลว",
|
||||
"agentManager.apply.conflictsTitle": "ข้อขัดแย้ง",
|
||||
"agentManager.apply.unknownFile": "ไฟล์ที่ยังไม่ได้แก้ไข",
|
||||
"agentManager.apply.reason.index": "ไฟล์ในเครื่องแตกต่างจากเวอร์ชันที่คาดไว้",
|
||||
"agentManager.apply.reason.patch": "ไม่สามารถนำ patch ไปใช้ได้อย่างสะอาด",
|
||||
"agentManager.apply.reason.contents": "ไม่สามารถอ่านเนื้อหาของไฟล์ในเครื่องปัจจุบัน",
|
||||
"agentManager.apply.reason.unknown": "ตรวจพบข้อขัดแย้ง",
|
||||
"agentManager.apply.inline.success": "นำไปใช้แล้ว",
|
||||
"agentManager.apply.inline.conflict": "ข้อขัดแย้ง",
|
||||
"agentManager.apply.inline.error": "ล้มเหลว",
|
||||
"agentManager.shortcuts.toggleDiff": "สลับแผง diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "สลับด่วน",
|
||||
"agentManager.shortcuts.jumpToItem": "ข้ามไปยังรายการ 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "ส่งทั้งหมดไปยังแชท",
|
||||
"agentManager.review.sendAllToChatWithCount": "ส่งทั้งหมดไปยังแชท ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "แสดงความคิดเห็นที่บรรทัด {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "แก้ไขความคิดเห็นที่บรรทัด {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "แสดงความคิดเห็น...",
|
||||
"agentManager.review.commentAction": "แสดงความคิดเห็น",
|
||||
"agentManager.review.sendToChat": "ส่งไปยังแชท",
|
||||
"agentManager.review.collapsedOnly": "ยุบ {{count}} รายการ",
|
||||
"agentManager.review.collapsedWithLarge": "ยุบ {{collapsed}} รายการ, ขนาดใหญ่ {{large}} รายการ",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "วาง URL ของ PR...",
|
||||
"agentManager.import.open": "เปิด",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "เลือก Branch...",
|
||||
"agentManager.import.loading": "กำลังโหลด...",
|
||||
"agentManager.import.loadingBranches": "กำลังโหลด Branches...",
|
||||
"agentManager.import.noMatchingBranches": "ไม่พบ Branch ที่ตรงกัน",
|
||||
"agentManager.import.noBranchesFound": "ไม่พบ Branch",
|
||||
"agentManager.import.noBranchesHint": "วาง URL ของ PR ด้านบนหรือสร้าง Worktree ใหม่",
|
||||
"agentManager.import.failed": "นำเข้าล้มเหลว",
|
||||
}
|
||||
@@ -0,0 +1,141 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "本地",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "会话",
|
||||
"agentManager.notGitRepo": "不是 git 仓库",
|
||||
"agentManager.worktree.settings": "Worktree 设置",
|
||||
"agentManager.worktree.new": "新建 Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree 设置脚本",
|
||||
"agentManager.worktree.delete": "删除 Worktree",
|
||||
"agentManager.worktree.stale": "已失效",
|
||||
"agentManager.worktree.staleTooltip": "在磁盘上缺失,或不再由 git worktree 跟踪",
|
||||
"agentManager.worktree.removeStale": "移除失效 Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "双击重命名",
|
||||
"agentManager.worktree.versions": "{{count}} 个版本",
|
||||
"agentManager.worktree.advancedOptions": "Worktree 高级选项",
|
||||
"agentManager.hoverCard.branch": "分支",
|
||||
"agentManager.hoverCard.base": "基础",
|
||||
"agentManager.hoverCard.sessions": "会话",
|
||||
"agentManager.hoverCard.files": "文件",
|
||||
"agentManager.hoverCard.changes": "更改",
|
||||
"agentManager.hoverCard.commits": "提交",
|
||||
"agentManager.session.new": "新建会话",
|
||||
"agentManager.session.untitled": "无标题",
|
||||
"agentManager.session.newSession": "新建会话",
|
||||
"agentManager.session.openInWorktree": "在 Worktree 中打开",
|
||||
"agentManager.session.readonly": "只读会话",
|
||||
"agentManager.session.noSessions": "没有打开的会话",
|
||||
"agentManager.tab.close": "关闭",
|
||||
"agentManager.tab.closeTab": "关闭标签页",
|
||||
"agentManager.tab.terminal": "终端",
|
||||
"agentManager.tab.openTerminal": "打开终端",
|
||||
"agentManager.setup.failed": "工作区设置失败",
|
||||
"agentManager.setup.settingUp": "正在设置工作区",
|
||||
"agentManager.shortcuts.title": "键盘快捷键",
|
||||
"agentManager.shortcuts.category.sidebar": "侧边栏",
|
||||
"agentManager.shortcuts.category.tabs": "标签页",
|
||||
"agentManager.shortcuts.category.terminal": "终端",
|
||||
"agentManager.shortcuts.category.global": "全局",
|
||||
"agentManager.shortcuts.previousItem": "上一项",
|
||||
"agentManager.shortcuts.nextItem": "下一项",
|
||||
"agentManager.shortcuts.newWorktree": "新建 Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "高级 Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "删除 Worktree",
|
||||
"agentManager.shortcuts.previousTab": "上一个标签页",
|
||||
"agentManager.shortcuts.nextTab": "下一个标签页",
|
||||
"agentManager.shortcuts.newTab": "新建标签页",
|
||||
"agentManager.shortcuts.closeTab": "关闭标签页",
|
||||
"agentManager.shortcuts.toggleTerminal": "切换终端",
|
||||
"agentManager.shortcuts.focusPanel": "聚焦面板",
|
||||
"agentManager.shortcuts.openAgentManager": "打开 Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "删除 Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "删除 Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "?这将从磁盘中移除 Worktree 并取消所有会话的关联。",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "取消",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "删除",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "移除失效 Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "移除失效 Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost": "?这只会移除 Agent Manager 映射,不会触碰磁盘上的文件。",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "取消",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "移除失效 Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "新建工作树",
|
||||
"agentManager.dialog.tab.new": "新建",
|
||||
"agentManager.dialog.tab.import": "导入",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree 名称(可选)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "输入消息(⌘Enter 发送)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "输入消息(Ctrl+Enter 发送)",
|
||||
"agentManager.dialog.advancedOptions": "高级选项",
|
||||
"agentManager.dialog.branchName": "分支名称",
|
||||
"agentManager.dialog.branchNamePlaceholder": "自动生成",
|
||||
"agentManager.dialog.baseBranch": "基础分支",
|
||||
"agentManager.dialog.searchBranches": "搜索分支...",
|
||||
"agentManager.dialog.branchBadge.default": "默认",
|
||||
"agentManager.dialog.branchBadge.remote": "远程",
|
||||
"agentManager.dialog.versions": "版本",
|
||||
"agentManager.dialog.versionHint": "{{count}} 个 Worktree 将并行运行",
|
||||
"agentManager.dialog.compareModels": "比较模型",
|
||||
"agentManager.dialog.compareModels.searchModels": "搜索模型...",
|
||||
"agentManager.dialog.creating": "创建中...",
|
||||
"agentManager.dialog.createWorkspace": "创建工作树",
|
||||
"agentManager.dialog.removeImage": "移除图片",
|
||||
"agentManager.dialog.advanced": "高级...",
|
||||
|
||||
"agentManager.diff.toggle": "切换差异",
|
||||
"agentManager.diff.openFile": "打开文件",
|
||||
"agentManager.apply.button": "应用到本地",
|
||||
"agentManager.apply.globalButton": "应用",
|
||||
"agentManager.apply.tooltip": "将所选工作树的更改应用到本地分支",
|
||||
"agentManager.apply.dialogTitle": "将更改应用到本地分支",
|
||||
"agentManager.apply.confirm": "立即应用",
|
||||
"agentManager.apply.retry": "重试应用",
|
||||
"agentManager.apply.previewTitle": "将这些更改应用到本地分支?",
|
||||
"agentManager.apply.previewSummary": "{{files}} 个文件,+{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "已选择 {{selected}}/{{total}} 个文件",
|
||||
"agentManager.apply.selectAll": "全选",
|
||||
"agentManager.apply.selectNone": "取消全选",
|
||||
"agentManager.apply.moreFiles": "+{{count}} 更多",
|
||||
"agentManager.apply.moreReasons": "{{reason}}(+{{count}} 更多)",
|
||||
"agentManager.apply.checking": "检查中...",
|
||||
"agentManager.apply.applying": "应用中...",
|
||||
"agentManager.apply.success": "更改已应用",
|
||||
"agentManager.apply.conflict": "应用存在冲突",
|
||||
"agentManager.apply.conflictToast": "{{files}} 个文件中有 {{count}} 个冲突。在应用中查看详情。",
|
||||
"agentManager.apply.error": "应用失败",
|
||||
"agentManager.apply.conflictsTitle": "冲突",
|
||||
"agentManager.apply.unknownFile": "未解决的文件",
|
||||
"agentManager.apply.reason.index": "本地文件与预期版本不同",
|
||||
"agentManager.apply.reason.patch": "补丁无法干净地应用",
|
||||
"agentManager.apply.reason.contents": "无法读取当前本地文件内容",
|
||||
"agentManager.apply.reason.unknown": "检测到冲突",
|
||||
"agentManager.apply.inline.success": "已应用",
|
||||
"agentManager.apply.inline.conflict": "冲突",
|
||||
"agentManager.apply.inline.error": "失败",
|
||||
"agentManager.shortcuts.toggleDiff": "切换差异面板",
|
||||
"agentManager.shortcuts.category.quickSwitch": "快速切换",
|
||||
"agentManager.shortcuts.jumpToItem": "跳转到项目 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "全部发送到聊天",
|
||||
"agentManager.review.sendAllToChatWithCount": "全部发送到聊天 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "在第 {{line}} 行评论",
|
||||
"agentManager.review.editCommentOnLine": "编辑第 {{line}} 行评论",
|
||||
"agentManager.review.commentPlaceholder": "留下评论...",
|
||||
"agentManager.review.commentAction": "评论",
|
||||
"agentManager.review.sendToChat": "发送到聊天",
|
||||
"agentManager.review.collapsedOnly": "{{count}} 个已折叠",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} 个已折叠,{{large}} 个过大",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "粘贴 PR URL...",
|
||||
"agentManager.import.open": "打开",
|
||||
"agentManager.import.branches": "分支",
|
||||
"agentManager.import.selectBranch": "选择分支...",
|
||||
"agentManager.import.loading": "加载中...",
|
||||
"agentManager.import.loadingBranches": "正在加载分支...",
|
||||
"agentManager.import.noMatchingBranches": "没有匹配的分支",
|
||||
"agentManager.import.noBranchesFound": "未找到分支。",
|
||||
"agentManager.import.noBranchesHint": "在上方粘贴 PR URL 或创建新的 Worktree。",
|
||||
"agentManager.import.failed": "导入失败",
|
||||
}
|
||||
@@ -0,0 +1,141 @@
|
||||
export const dict = {
|
||||
"agentManager.local": "本機",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "工作階段",
|
||||
"agentManager.notGitRepo": "不是 git 儲存庫",
|
||||
"agentManager.worktree.settings": "Worktree 設定",
|
||||
"agentManager.worktree.new": "新建 Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree 設定指令碼",
|
||||
"agentManager.worktree.delete": "刪除 Worktree",
|
||||
"agentManager.worktree.stale": "已失效",
|
||||
"agentManager.worktree.staleTooltip": "磁碟上不存在,或不再由 git worktree 追蹤",
|
||||
"agentManager.worktree.removeStale": "移除失效 Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "按兩下以重新命名",
|
||||
"agentManager.worktree.versions": "{{count}} 個版本",
|
||||
"agentManager.worktree.advancedOptions": "Worktree 進階選項",
|
||||
"agentManager.hoverCard.branch": "分支",
|
||||
"agentManager.hoverCard.base": "基底",
|
||||
"agentManager.hoverCard.sessions": "工作階段",
|
||||
"agentManager.hoverCard.files": "檔案",
|
||||
"agentManager.hoverCard.changes": "變更",
|
||||
"agentManager.hoverCard.commits": "提交",
|
||||
"agentManager.session.new": "新建工作階段",
|
||||
"agentManager.session.untitled": "未命名",
|
||||
"agentManager.session.newSession": "新建工作階段",
|
||||
"agentManager.session.openInWorktree": "在 Worktree 中開啟",
|
||||
"agentManager.session.readonly": "唯讀工作階段",
|
||||
"agentManager.session.noSessions": "沒有開啟的工作階段",
|
||||
"agentManager.tab.close": "關閉",
|
||||
"agentManager.tab.closeTab": "關閉分頁",
|
||||
"agentManager.tab.terminal": "終端機",
|
||||
"agentManager.tab.openTerminal": "開啟終端機",
|
||||
"agentManager.setup.failed": "工作區設定失敗",
|
||||
"agentManager.setup.settingUp": "正在設定工作區",
|
||||
"agentManager.shortcuts.title": "鍵盤快捷鍵",
|
||||
"agentManager.shortcuts.category.sidebar": "側邊欄",
|
||||
"agentManager.shortcuts.category.tabs": "分頁",
|
||||
"agentManager.shortcuts.category.terminal": "終端機",
|
||||
"agentManager.shortcuts.category.global": "全域",
|
||||
"agentManager.shortcuts.previousItem": "上一個項目",
|
||||
"agentManager.shortcuts.nextItem": "下一個項目",
|
||||
"agentManager.shortcuts.newWorktree": "新建 Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "進階 Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "刪除 Worktree",
|
||||
"agentManager.shortcuts.previousTab": "上一個分頁",
|
||||
"agentManager.shortcuts.nextTab": "下一個分頁",
|
||||
"agentManager.shortcuts.newTab": "新建分頁",
|
||||
"agentManager.shortcuts.closeTab": "關閉分頁",
|
||||
"agentManager.shortcuts.toggleTerminal": "切換終端機",
|
||||
"agentManager.shortcuts.focusPanel": "聚焦面板",
|
||||
"agentManager.shortcuts.openAgentManager": "開啟 Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "刪除 Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "刪除 Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "?這將從磁碟中移除 Worktree 並取消所有工作階段的關聯。",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "取消",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "刪除",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "移除失效 Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "移除失效 Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost": "?這只會移除 Agent Manager 對應,不會變更磁碟上的檔案。",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "取消",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "移除失效 Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "新建工作樹",
|
||||
"agentManager.dialog.tab.new": "新建",
|
||||
"agentManager.dialog.tab.import": "匯入",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree 名稱(選填)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "輸入訊息(⌘Enter 傳送)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "輸入訊息(Ctrl+Enter 傳送)",
|
||||
"agentManager.dialog.advancedOptions": "進階選項",
|
||||
"agentManager.dialog.branchName": "分支名稱",
|
||||
"agentManager.dialog.branchNamePlaceholder": "自動產生",
|
||||
"agentManager.dialog.baseBranch": "基底分支",
|
||||
"agentManager.dialog.searchBranches": "搜尋分支...",
|
||||
"agentManager.dialog.branchBadge.default": "預設",
|
||||
"agentManager.dialog.branchBadge.remote": "遠端",
|
||||
"agentManager.dialog.versions": "版本",
|
||||
"agentManager.dialog.versionHint": "{{count}} 個 Worktree 將並行執行",
|
||||
"agentManager.dialog.compareModels": "比較模型",
|
||||
"agentManager.dialog.compareModels.searchModels": "搜尋模型...",
|
||||
"agentManager.dialog.creating": "建立中...",
|
||||
"agentManager.dialog.createWorkspace": "建立工作樹",
|
||||
"agentManager.dialog.removeImage": "移除圖片",
|
||||
"agentManager.dialog.advanced": "進階...",
|
||||
|
||||
"agentManager.diff.toggle": "切換差異",
|
||||
"agentManager.diff.openFile": "開啟檔案",
|
||||
"agentManager.apply.button": "套用到本地",
|
||||
"agentManager.apply.globalButton": "套用",
|
||||
"agentManager.apply.tooltip": "將所選工作樹的變更套用到本地分支",
|
||||
"agentManager.apply.dialogTitle": "將變更套用到本地分支",
|
||||
"agentManager.apply.confirm": "立即套用",
|
||||
"agentManager.apply.retry": "重試套用",
|
||||
"agentManager.apply.previewTitle": "將這些變更套用到本地分支?",
|
||||
"agentManager.apply.previewSummary": "{{files}} 個檔案,+{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "已選取 {{selected}}/{{total}} 個檔案",
|
||||
"agentManager.apply.selectAll": "全選",
|
||||
"agentManager.apply.selectNone": "取消全選",
|
||||
"agentManager.apply.moreFiles": "+{{count}} 更多",
|
||||
"agentManager.apply.moreReasons": "{{reason}}(+{{count}} 更多)",
|
||||
"agentManager.apply.checking": "檢查中...",
|
||||
"agentManager.apply.applying": "套用中...",
|
||||
"agentManager.apply.success": "變更已套用",
|
||||
"agentManager.apply.conflict": "套用存在衝突",
|
||||
"agentManager.apply.conflictToast": "{{files}} 個檔案中有 {{count}} 個衝突。在套用中查看詳情。",
|
||||
"agentManager.apply.error": "套用失敗",
|
||||
"agentManager.apply.conflictsTitle": "衝突",
|
||||
"agentManager.apply.unknownFile": "未解決的檔案",
|
||||
"agentManager.apply.reason.index": "本地檔案與預期版本不同",
|
||||
"agentManager.apply.reason.patch": "修補程式無法乾淨地套用",
|
||||
"agentManager.apply.reason.contents": "無法讀取目前本地檔案內容",
|
||||
"agentManager.apply.reason.unknown": "偵測到衝突",
|
||||
"agentManager.apply.inline.success": "已套用",
|
||||
"agentManager.apply.inline.conflict": "衝突",
|
||||
"agentManager.apply.inline.error": "失敗",
|
||||
"agentManager.shortcuts.toggleDiff": "切換差異面板",
|
||||
"agentManager.shortcuts.category.quickSwitch": "快速切換",
|
||||
"agentManager.shortcuts.jumpToItem": "跳至項目 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "全部傳送到聊天",
|
||||
"agentManager.review.sendAllToChatWithCount": "全部傳送到聊天 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "在第 {{line}} 行留言",
|
||||
"agentManager.review.editCommentOnLine": "編輯第 {{line}} 行留言",
|
||||
"agentManager.review.commentPlaceholder": "留下留言...",
|
||||
"agentManager.review.commentAction": "留言",
|
||||
"agentManager.review.sendToChat": "傳送到聊天",
|
||||
"agentManager.review.collapsedOnly": "{{count}} 個已摺疊",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} 個已摺疊,{{large}} 個過大",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "貼上 PR URL...",
|
||||
"agentManager.import.open": "開啟",
|
||||
"agentManager.import.branches": "分支",
|
||||
"agentManager.import.selectBranch": "選擇分支...",
|
||||
"agentManager.import.loading": "載入中...",
|
||||
"agentManager.import.loadingBranches": "正在載入分支...",
|
||||
"agentManager.import.noMatchingBranches": "沒有符合的分支",
|
||||
"agentManager.import.noBranchesFound": "找不到分支。",
|
||||
"agentManager.import.noBranchesHint": "在上方貼上 PR URL 或建立新的 Worktree。",
|
||||
"agentManager.import.failed": "匯入失敗",
|
||||
}
|
||||
@@ -3,12 +3,19 @@
|
||||
* Renders all parts of an assistant message as a flat list — no context grouping.
|
||||
* Unlike the upstream AssistantParts, this renders each read/glob/grep/list tool
|
||||
* individually for maximum verbosity in the VS Code sidebar context.
|
||||
*
|
||||
* Permissions and questions with a tool context are rendered inline with their
|
||||
* tool call rather than in the bottom dock.
|
||||
*/
|
||||
|
||||
import { Component, For, Show, createMemo } from "solid-js"
|
||||
import { Component, For, Show, createMemo, createSignal } from "solid-js"
|
||||
import { Part, PART_MAPPING } from "@kilocode/kilo-ui/message-part"
|
||||
import { Button } from "@kilocode/kilo-ui/button"
|
||||
import type { AssistantMessage as SDKAssistantMessage, Part as SDKPart, Message as SDKMessage } from "@kilocode/sdk/v2"
|
||||
import { useData } from "@kilocode/kilo-ui/context/data"
|
||||
import { useSession } from "../../context/session"
|
||||
import { useLanguage } from "../../context/language"
|
||||
import { QuestionDock } from "./QuestionDock"
|
||||
|
||||
const HIDDEN_TOOLS = new Set(["todowrite", "todoread"])
|
||||
|
||||
@@ -33,6 +40,8 @@ interface AssistantMessageProps {
|
||||
|
||||
export const AssistantMessage: Component<AssistantMessageProps> = (props) => {
|
||||
const data = useData()
|
||||
const session = useSession()
|
||||
const language = useLanguage()
|
||||
|
||||
const parts = createMemo(() => {
|
||||
const stored = data.store.part?.[props.message.id]
|
||||
@@ -40,18 +49,76 @@ export const AssistantMessage: Component<AssistantMessageProps> = (props) => {
|
||||
return (stored as SDKPart[]).filter(isRenderable)
|
||||
})
|
||||
|
||||
const id = () => session.currentSessionID()
|
||||
const permissions = () => session.permissions().filter((p) => p.sessionID === id() && p.tool)
|
||||
const questions = () => session.questions().filter((q) => q.sessionID === id() && q.tool)
|
||||
|
||||
const permissionForPart = (part: SDKPart) => {
|
||||
if (part.type !== "tool") return undefined
|
||||
const callID = (part as SDKPart & { callID: string }).callID
|
||||
return permissions().find((p) => p.tool!.callID === callID && p.tool!.messageID === props.message.id)
|
||||
}
|
||||
|
||||
// Questions linked to this message (rendered after the last part)
|
||||
const questionForMessage = () =>
|
||||
questions().find((q) => q.tool!.messageID === props.message.id)
|
||||
|
||||
const [responding, setResponding] = createSignal(false)
|
||||
|
||||
const decide = (permissionId: string, response: "once" | "always" | "reject") => {
|
||||
if (responding()) return
|
||||
setResponding(true)
|
||||
session.respondToPermission(permissionId, response)
|
||||
setResponding(false)
|
||||
}
|
||||
|
||||
return (
|
||||
<For each={parts()}>
|
||||
{(part) => (
|
||||
<Show when={PART_MAPPING[part.type]}>
|
||||
<Part
|
||||
part={part}
|
||||
message={props.message as SDKMessage}
|
||||
showAssistantCopyPartID={props.showAssistantCopyPartID}
|
||||
turnDurationMs={props.turnDurationMs}
|
||||
/>
|
||||
</Show>
|
||||
)}
|
||||
</For>
|
||||
<>
|
||||
<For each={parts()}>
|
||||
{(part) => {
|
||||
const perm = () => permissionForPart(part)
|
||||
return (
|
||||
<Show when={PART_MAPPING[part.type]}>
|
||||
<div data-component="tool-part-wrapper" data-permission={!!perm()}>
|
||||
<Part
|
||||
part={part}
|
||||
message={props.message as SDKMessage}
|
||||
showAssistantCopyPartID={props.showAssistantCopyPartID}
|
||||
turnDurationMs={props.turnDurationMs}
|
||||
/>
|
||||
<Show when={perm()} keyed>
|
||||
{(p) => (
|
||||
<div data-component="permission-prompt">
|
||||
<Show when={p.patterns.length > 0}>
|
||||
<div class="permission-dock-patterns">
|
||||
<For each={p.patterns}>
|
||||
{(pattern) => <code class="permission-dock-pattern">{pattern}</code>}
|
||||
</For>
|
||||
</div>
|
||||
</Show>
|
||||
<div data-slot="permission-actions">
|
||||
<Button variant="ghost" size="small" onClick={() => decide(p.id, "reject")} disabled={responding()}>
|
||||
{language.t("ui.permission.deny")}
|
||||
</Button>
|
||||
<Button variant="secondary" size="small" onClick={() => decide(p.id, "always")} disabled={responding()}>
|
||||
{language.t("ui.permission.allowAlways")}
|
||||
</Button>
|
||||
<Button variant="primary" size="small" onClick={() => decide(p.id, "once")} disabled={responding()}>
|
||||
{language.t("ui.permission.allowOnce")}
|
||||
</Button>
|
||||
</div>
|
||||
<p data-slot="permission-hint">{language.t("ui.permission.sessionHint")}</p>
|
||||
</div>
|
||||
)}
|
||||
</Show>
|
||||
</div>
|
||||
</Show>
|
||||
)
|
||||
}}
|
||||
</For>
|
||||
<Show when={questionForMessage()} keyed>
|
||||
{(req) => <QuestionDock request={req} />}
|
||||
</Show>
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ export const ChatView: Component<ChatViewProps> = (props) => {
|
||||
const sessionQuestions = () => session.questions().filter((q) => q.sessionID === id())
|
||||
const sessionPermissions = () => session.permissions().filter((p) => p.sessionID === id())
|
||||
|
||||
const questionRequest = () => sessionQuestions()[0]
|
||||
const questionRequest = () => sessionQuestions().find((q) => !q.tool)
|
||||
const permissionRequest = () => sessionPermissions().find((p) => !p.tool)
|
||||
const blocked = () => sessionPermissions().length > 0 || sessionQuestions().length > 0
|
||||
|
||||
|
||||
@@ -41,6 +41,22 @@ import { dict as appNo } from "../i18n/no"
|
||||
import { dict as appBr } from "../i18n/br"
|
||||
import { dict as appTh } from "../i18n/th"
|
||||
import { dict as appBs } from "../i18n/bs"
|
||||
import { dict as amEn } from "../../agent-manager/i18n/en"
|
||||
import { dict as amZh } from "../../agent-manager/i18n/zh"
|
||||
import { dict as amZht } from "../../agent-manager/i18n/zht"
|
||||
import { dict as amKo } from "../../agent-manager/i18n/ko"
|
||||
import { dict as amDe } from "../../agent-manager/i18n/de"
|
||||
import { dict as amEs } from "../../agent-manager/i18n/es"
|
||||
import { dict as amFr } from "../../agent-manager/i18n/fr"
|
||||
import { dict as amDa } from "../../agent-manager/i18n/da"
|
||||
import { dict as amJa } from "../../agent-manager/i18n/ja"
|
||||
import { dict as amPl } from "../../agent-manager/i18n/pl"
|
||||
import { dict as amRu } from "../../agent-manager/i18n/ru"
|
||||
import { dict as amAr } from "../../agent-manager/i18n/ar"
|
||||
import { dict as amNo } from "../../agent-manager/i18n/no"
|
||||
import { dict as amBr } from "../../agent-manager/i18n/br"
|
||||
import { dict as amTh } from "../../agent-manager/i18n/th"
|
||||
import { dict as amBs } from "../../agent-manager/i18n/bs"
|
||||
import { dict as kiloEn } from "@kilocode/kilo-i18n/en"
|
||||
import { dict as kiloZh } from "@kilocode/kilo-i18n/zh"
|
||||
import { dict as kiloZht } from "@kilocode/kilo-i18n/zht"
|
||||
@@ -84,25 +100,25 @@ export const LOCALE_LABELS: Record<Locale, string> = {
|
||||
bs: "Bosanski",
|
||||
}
|
||||
|
||||
// Merge all 3 dict layers: app + ui + kilo (kilo overrides last, English base always present)
|
||||
// Merge 4 dict layers: app + ui + kilo + agent manager (kilo and agent manager override last)
|
||||
const base = { ...appEn, ...uiEn, ...kiloEn }
|
||||
const dicts: Record<Locale, Record<string, string>> = {
|
||||
en: base,
|
||||
zh: { ...base, ...appZh, ...uiZh, ...kiloZh },
|
||||
zht: { ...base, ...appZht, ...uiZht, ...kiloZht },
|
||||
ko: { ...base, ...appKo, ...uiKo, ...kiloKo },
|
||||
de: { ...base, ...appDe, ...uiDe, ...kiloDe },
|
||||
es: { ...base, ...appEs, ...uiEs, ...kiloEs },
|
||||
fr: { ...base, ...appFr, ...uiFr, ...kiloFr },
|
||||
da: { ...base, ...appDa, ...uiDa, ...kiloDa },
|
||||
ja: { ...base, ...appJa, ...uiJa, ...kiloJa },
|
||||
pl: { ...base, ...appPl, ...uiPl, ...kiloPl },
|
||||
ru: { ...base, ...appRu, ...uiRu, ...kiloRu },
|
||||
ar: { ...base, ...appAr, ...uiAr, ...kiloAr },
|
||||
no: { ...base, ...appNo, ...uiNo, ...kiloNo },
|
||||
br: { ...base, ...appBr, ...uiBr, ...kiloBr },
|
||||
th: { ...base, ...appTh, ...uiTh, ...kiloTh },
|
||||
bs: { ...base, ...appBs, ...uiBs, ...kiloBs },
|
||||
en: { ...base, ...amEn },
|
||||
zh: { ...base, ...appZh, ...uiZh, ...kiloZh, ...amEn, ...amZh },
|
||||
zht: { ...base, ...appZht, ...uiZht, ...kiloZht, ...amEn, ...amZht },
|
||||
ko: { ...base, ...appKo, ...uiKo, ...kiloKo, ...amEn, ...amKo },
|
||||
de: { ...base, ...appDe, ...uiDe, ...kiloDe, ...amEn, ...amDe },
|
||||
es: { ...base, ...appEs, ...uiEs, ...kiloEs, ...amEn, ...amEs },
|
||||
fr: { ...base, ...appFr, ...uiFr, ...kiloFr, ...amEn, ...amFr },
|
||||
da: { ...base, ...appDa, ...uiDa, ...kiloDa, ...amEn, ...amDa },
|
||||
ja: { ...base, ...appJa, ...uiJa, ...kiloJa, ...amEn, ...amJa },
|
||||
pl: { ...base, ...appPl, ...uiPl, ...kiloPl, ...amEn, ...amPl },
|
||||
ru: { ...base, ...appRu, ...uiRu, ...kiloRu, ...amEn, ...amRu },
|
||||
ar: { ...base, ...appAr, ...uiAr, ...kiloAr, ...amEn, ...amAr },
|
||||
no: { ...base, ...appNo, ...uiNo, ...kiloNo, ...amEn, ...amNo },
|
||||
br: { ...base, ...appBr, ...uiBr, ...kiloBr, ...amEn, ...amBr },
|
||||
th: { ...base, ...appTh, ...uiTh, ...kiloTh, ...amEn, ...amTh },
|
||||
bs: { ...base, ...appBs, ...uiBs, ...kiloBs, ...amEn, ...amBs },
|
||||
}
|
||||
|
||||
function normalizeLocale(lang: string): Locale {
|
||||
@@ -177,7 +193,7 @@ interface LanguageContextValue {
|
||||
t: (key: string, params?: UiI18nParams) => string
|
||||
}
|
||||
|
||||
const LanguageContext = createContext<LanguageContextValue>()
|
||||
export const LanguageContext = createContext<LanguageContextValue>()
|
||||
|
||||
export function useLanguage() {
|
||||
const ctx = useContext(LanguageContext)
|
||||
|
||||
@@ -138,7 +138,7 @@ interface SessionContextValue {
|
||||
selectCloudSession: (cloudSessionId: string) => void
|
||||
}
|
||||
|
||||
const SessionContext = createContext<SessionContextValue>()
|
||||
export const SessionContext = createContext<SessionContextValue>()
|
||||
|
||||
export const SessionProvider: ParentComponent = (props) => {
|
||||
const vscode = useVSCode()
|
||||
|
||||
@@ -941,146 +941,8 @@ export const dict = {
|
||||
"dialog.model.notSet": "غير محدد",
|
||||
"profile.personalAccount": "حساب شخصي",
|
||||
|
||||
"agentManager.local": "محلي",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "الجلسات",
|
||||
"agentManager.notGitRepo": "ليس مستودع git",
|
||||
"agentManager.worktree.settings": "إعدادات Worktree",
|
||||
"agentManager.worktree.new": "Worktree جديد",
|
||||
"agentManager.worktree.setupScript": "سكربت إعداد Worktree",
|
||||
"agentManager.worktree.delete": "حذف Worktree",
|
||||
"agentManager.worktree.stale": "قديم",
|
||||
"agentManager.worktree.staleTooltip": "مفقود على القرص أو لم يعد git worktree يتتبعه",
|
||||
"agentManager.worktree.removeStale": "إزالة Worktree القديم",
|
||||
"agentManager.worktree.doubleClickRename": "انقر مرتين لإعادة التسمية",
|
||||
"agentManager.worktree.versions": "{{count}} نسخ",
|
||||
"agentManager.worktree.advancedOptions": "خيارات Worktree متقدمة",
|
||||
"agentManager.hoverCard.branch": "الفرع",
|
||||
"agentManager.hoverCard.base": "الأساس",
|
||||
"agentManager.hoverCard.sessions": "الجلسات",
|
||||
"agentManager.hoverCard.files": "الملفات",
|
||||
"agentManager.hoverCard.changes": "التغييرات",
|
||||
"agentManager.hoverCard.commits": "عمليات الالتزام",
|
||||
"agentManager.session.new": "جلسة جديدة",
|
||||
"agentManager.session.untitled": "بدون عنوان",
|
||||
"agentManager.session.newSession": "جلسة جديدة",
|
||||
"agentManager.session.openInWorktree": "فتح في Worktree",
|
||||
"agentManager.session.readonly": "جلسة للقراءة فقط",
|
||||
"agentManager.session.noSessions": "لا توجد جلسات مفتوحة",
|
||||
"agentManager.tab.close": "إغلاق",
|
||||
"agentManager.tab.closeTab": "إغلاق علامة التبويب",
|
||||
"agentManager.tab.terminal": "الطرفية",
|
||||
"agentManager.tab.openTerminal": "فتح الطرفية",
|
||||
"agentManager.setup.failed": "فشل إعداد مساحة العمل",
|
||||
"agentManager.setup.settingUp": "جارٍ إعداد مساحة العمل",
|
||||
"agentManager.shortcuts.title": "اختصارات لوحة المفاتيح",
|
||||
"agentManager.shortcuts.category.sidebar": "الشريط الجانبي",
|
||||
"agentManager.shortcuts.category.tabs": "علامات التبويب",
|
||||
"agentManager.shortcuts.category.terminal": "الطرفية",
|
||||
"agentManager.shortcuts.category.global": "عام",
|
||||
"agentManager.shortcuts.previousItem": "العنصر السابق",
|
||||
"agentManager.shortcuts.nextItem": "العنصر التالي",
|
||||
"agentManager.shortcuts.newWorktree": "Worktree جديد",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree متقدم",
|
||||
"agentManager.shortcuts.deleteWorktree": "حذف Worktree",
|
||||
"agentManager.shortcuts.previousTab": "علامة التبويب السابقة",
|
||||
"agentManager.shortcuts.nextTab": "علامة التبويب التالية",
|
||||
"agentManager.shortcuts.newTab": "علامة تبويب جديدة",
|
||||
"agentManager.shortcuts.closeTab": "إغلاق علامة التبويب",
|
||||
"agentManager.shortcuts.toggleTerminal": "تبديل الطرفية",
|
||||
"agentManager.shortcuts.focusPanel": "تركيز اللوحة",
|
||||
"agentManager.shortcuts.openAgentManager": "فتح Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "حذف Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "حذف Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "؟ سيؤدي هذا إلى إزالة Worktree من القرص وفصل جميع الجلسات.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "إلغاء",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "حذف",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/ar.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "إزالة Worktree القديم",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "إزالة Worktree القديم ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"؟ سيؤدي هذا إلى إزالة الربط في Agent Manager فقط وترك الملفات على القرص دون تغيير.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "إلغاء",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "إزالة Worktree القديم",
|
||||
|
||||
"agentManager.dialog.openWorktree": "شجرة عمل جديدة",
|
||||
"agentManager.dialog.tab.new": "جديد",
|
||||
"agentManager.dialog.tab.import": "استيراد",
|
||||
"agentManager.dialog.namePlaceholder": "اسم Worktree (اختياري)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "اكتب رسالة (⌘Enter للإرسال)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "اكتب رسالة (Ctrl+Enter للإرسال)",
|
||||
"agentManager.dialog.advancedOptions": "خيارات متقدمة",
|
||||
"agentManager.dialog.branchName": "اسم الفرع",
|
||||
"agentManager.dialog.branchNamePlaceholder": "يتم إنشاؤه تلقائيًا",
|
||||
"agentManager.dialog.baseBranch": "الفرع الأساسي",
|
||||
"agentManager.dialog.searchBranches": "البحث في الفروع...",
|
||||
"agentManager.dialog.branchBadge.default": "افتراضي",
|
||||
"agentManager.dialog.branchBadge.remote": "بعيد",
|
||||
"agentManager.dialog.versions": "النسخ",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktrees ستعمل بالتوازي",
|
||||
"agentManager.dialog.compareModels": "مقارنة النماذج",
|
||||
"agentManager.dialog.compareModels.searchModels": "البحث عن النماذج...",
|
||||
"agentManager.dialog.creating": "جارٍ الإنشاء...",
|
||||
"agentManager.dialog.createWorkspace": "إنشاء شجرة العمل",
|
||||
"agentManager.dialog.removeImage": "إزالة الصورة",
|
||||
"agentManager.dialog.advanced": "متقدم...",
|
||||
|
||||
"agentManager.diff.toggle": "تبديل الفرق",
|
||||
"agentManager.diff.openFile": "فتح الملف",
|
||||
"agentManager.apply.button": "تطبيق محليًا",
|
||||
"agentManager.apply.globalButton": "تطبيق",
|
||||
"agentManager.apply.tooltip": "تطبيق تغييرات شجرة العمل المحددة على الفرع المحلي",
|
||||
"agentManager.apply.dialogTitle": "تطبيق التغييرات على الفرع المحلي",
|
||||
"agentManager.apply.confirm": "تطبيق الآن",
|
||||
"agentManager.apply.retry": "إعادة محاولة التطبيق",
|
||||
"agentManager.apply.previewTitle": "تطبيق هذه التغييرات على الفرع المحلي؟",
|
||||
"agentManager.apply.previewSummary": "{{files}} ملفات، +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} من {{total}} ملفات محددة",
|
||||
"agentManager.apply.selectAll": "تحديد الكل",
|
||||
"agentManager.apply.selectNone": "إلغاء تحديد الكل",
|
||||
"agentManager.apply.moreFiles": "+{{count}} المزيد",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} المزيد)",
|
||||
"agentManager.apply.checking": "جارٍ التحقق...",
|
||||
"agentManager.apply.applying": "جارٍ التطبيق...",
|
||||
"agentManager.apply.success": "تم تطبيق التغييرات",
|
||||
"agentManager.apply.conflict": "التطبيق يحتوي على تعارضات",
|
||||
"agentManager.apply.conflictToast": "{{count}} تعارضات في {{files}} ملفات. راجع التفاصيل في التطبيق.",
|
||||
"agentManager.apply.error": "فشل التطبيق",
|
||||
"agentManager.apply.conflictsTitle": "التعارضات",
|
||||
"agentManager.apply.unknownFile": "ملف غير محلول",
|
||||
"agentManager.apply.reason.index": "الملف المحلي يختلف عن النسخة المتوقعة",
|
||||
"agentManager.apply.reason.patch": "لا يمكن تطبيق التصحيح بشكل نظيف",
|
||||
"agentManager.apply.reason.contents": "لا يمكن قراءة محتويات الملف المحلي الحالي",
|
||||
"agentManager.apply.reason.unknown": "تم اكتشاف تعارض",
|
||||
"agentManager.apply.inline.success": "تم التطبيق",
|
||||
"agentManager.apply.inline.conflict": "تعارضات",
|
||||
"agentManager.apply.inline.error": "فشل",
|
||||
"agentManager.shortcuts.toggleDiff": "تبديل لوحة الفرق",
|
||||
"agentManager.shortcuts.category.quickSwitch": "التبديل السريع",
|
||||
"agentManager.shortcuts.jumpToItem": "الانتقال إلى العنصر 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "إرسال الكل إلى الدردشة",
|
||||
"agentManager.review.sendAllToChatWithCount": "إرسال الكل إلى الدردشة ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "تعليق على السطر {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "تعديل التعليق على السطر {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "اترك تعليقًا...",
|
||||
"agentManager.review.commentAction": "تعليق",
|
||||
"agentManager.review.sendToChat": "إرسال إلى الدردشة",
|
||||
"agentManager.review.collapsedOnly": "{{count}} مطوي",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} مطوي، {{large}} كبير",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "الصق رابط PR...",
|
||||
"agentManager.import.open": "فتح",
|
||||
"agentManager.import.branches": "الفروع",
|
||||
"agentManager.import.selectBranch": "اختر فرعًا...",
|
||||
"agentManager.import.loading": "جارٍ التحميل...",
|
||||
"agentManager.import.loadingBranches": "جارٍ تحميل الفروع...",
|
||||
"agentManager.import.noMatchingBranches": "لا توجد فروع مطابقة",
|
||||
"agentManager.import.noBranchesFound": "لم يتم العثور على فروع.",
|
||||
"agentManager.import.noBranchesHint": "الصق رابط PR أعلاه أو أنشئ Worktree جديدًا.",
|
||||
"agentManager.import.failed": "فشل الاستيراد",
|
||||
|
||||
"question.summary": "{{n}} من {{total}} أسئلة",
|
||||
"common.review": "مراجعة",
|
||||
|
||||
@@ -955,146 +955,8 @@ export const dict = {
|
||||
"dialog.model.notSet": "Não definido",
|
||||
"profile.personalAccount": "Conta pessoal",
|
||||
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSÕES",
|
||||
"agentManager.notGitRepo": "Não é um repositório git",
|
||||
"agentManager.worktree.settings": "Configurações do Worktree",
|
||||
"agentManager.worktree.new": "Novo Worktree",
|
||||
"agentManager.worktree.setupScript": "Script de configuração do Worktree",
|
||||
"agentManager.worktree.delete": "Excluir Worktree",
|
||||
"agentManager.worktree.stale": "Obsoleto",
|
||||
"agentManager.worktree.staleTooltip": "Ausente no disco ou não é mais rastreado pelo git worktree",
|
||||
"agentManager.worktree.removeStale": "Remover Worktree obsoleto",
|
||||
"agentManager.worktree.doubleClickRename": "Clique duplo para renomear",
|
||||
"agentManager.worktree.versions": "{{count}} versões",
|
||||
"agentManager.worktree.advancedOptions": "Opções avançadas de Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessões",
|
||||
"agentManager.hoverCard.files": "Arquivos",
|
||||
"agentManager.hoverCard.changes": "Alterações",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Nova sessão",
|
||||
"agentManager.session.untitled": "Sem título",
|
||||
"agentManager.session.newSession": "Nova Sessão",
|
||||
"agentManager.session.openInWorktree": "Abrir no Worktree",
|
||||
"agentManager.session.readonly": "Sessão somente leitura",
|
||||
"agentManager.session.noSessions": "Nenhuma sessão aberta",
|
||||
"agentManager.tab.close": "Fechar",
|
||||
"agentManager.tab.closeTab": "Fechar aba",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Abrir Terminal",
|
||||
"agentManager.setup.failed": "Falha na configuração do workspace",
|
||||
"agentManager.setup.settingUp": "Configurando workspace",
|
||||
"agentManager.shortcuts.title": "Atalhos de Teclado",
|
||||
"agentManager.shortcuts.category.sidebar": "Barra lateral",
|
||||
"agentManager.shortcuts.category.tabs": "Abas",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Item anterior",
|
||||
"agentManager.shortcuts.nextItem": "Próximo item",
|
||||
"agentManager.shortcuts.newWorktree": "Novo Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree avançado",
|
||||
"agentManager.shortcuts.deleteWorktree": "Excluir Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Aba anterior",
|
||||
"agentManager.shortcuts.nextTab": "Próxima aba",
|
||||
"agentManager.shortcuts.newTab": "Nova aba",
|
||||
"agentManager.shortcuts.closeTab": "Fechar aba",
|
||||
"agentManager.shortcuts.toggleTerminal": "Alternar terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Focar painel",
|
||||
"agentManager.shortcuts.openAgentManager": "Abrir Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Excluir Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Excluir Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Isso remove o Worktree do disco e desassocia todas as sessões.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Excluir",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/br.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Remover Worktree obsoleto",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Remover Worktree obsoleto ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Isso remove apenas o mapeamento no Agent Manager e não altera os arquivos no disco.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Remover Worktree obsoleto",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Novo Worktree",
|
||||
"agentManager.dialog.tab.new": "Novo",
|
||||
"agentManager.dialog.tab.import": "Importar",
|
||||
"agentManager.dialog.namePlaceholder": "Nome do Worktree (opcional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Digite uma mensagem (⌘Enter para enviar)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Digite uma mensagem (Ctrl+Enter para enviar)",
|
||||
"agentManager.dialog.advancedOptions": "Opções avançadas",
|
||||
"agentManager.dialog.branchName": "Nome do branch",
|
||||
"agentManager.dialog.branchNamePlaceholder": "gerado automaticamente",
|
||||
"agentManager.dialog.baseBranch": "Branch base",
|
||||
"agentManager.dialog.searchBranches": "Buscar branches...",
|
||||
"agentManager.dialog.branchBadge.default": "padrão",
|
||||
"agentManager.dialog.branchBadge.remote": "remoto",
|
||||
"agentManager.dialog.versions": "Versões",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees serão executados em paralelo",
|
||||
"agentManager.dialog.compareModels": "Comparar Modelos",
|
||||
"agentManager.dialog.compareModels.searchModels": "Pesquisar modelos...",
|
||||
"agentManager.dialog.creating": "Criando...",
|
||||
"agentManager.dialog.createWorkspace": "Criar Worktree",
|
||||
"agentManager.dialog.removeImage": "Remover imagem",
|
||||
"agentManager.dialog.advanced": "Avançado...",
|
||||
|
||||
"agentManager.diff.toggle": "Alternar diff",
|
||||
"agentManager.diff.openFile": "Abrir arquivo",
|
||||
"agentManager.apply.button": "Aplicar localmente",
|
||||
"agentManager.apply.globalButton": "Aplicar",
|
||||
"agentManager.apply.tooltip": "Aplicar alterações da worktree selecionada na branch local",
|
||||
"agentManager.apply.dialogTitle": "Aplicar alterações na branch local",
|
||||
"agentManager.apply.confirm": "Aplicar agora",
|
||||
"agentManager.apply.retry": "Tentar aplicar novamente",
|
||||
"agentManager.apply.previewTitle": "Aplicar essas alterações na branch local?",
|
||||
"agentManager.apply.previewSummary": "{{files}} arquivos, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} de {{total}} arquivos selecionados",
|
||||
"agentManager.apply.selectAll": "Selecionar todos",
|
||||
"agentManager.apply.selectNone": "Desmarcar todos",
|
||||
"agentManager.apply.moreFiles": "+{{count}} mais",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} mais)",
|
||||
"agentManager.apply.checking": "Verificando...",
|
||||
"agentManager.apply.applying": "Aplicando...",
|
||||
"agentManager.apply.success": "Alterações aplicadas",
|
||||
"agentManager.apply.conflict": "A aplicação tem conflitos",
|
||||
"agentManager.apply.conflictToast": "{{count}} conflitos em {{files}} arquivos. Revise os detalhes em Aplicar.",
|
||||
"agentManager.apply.error": "A aplicação falhou",
|
||||
"agentManager.apply.conflictsTitle": "Conflitos",
|
||||
"agentManager.apply.unknownFile": "Arquivo não resolvido",
|
||||
"agentManager.apply.reason.index": "O arquivo local difere da versão esperada",
|
||||
"agentManager.apply.reason.patch": "O patch não pode ser aplicado de forma limpa",
|
||||
"agentManager.apply.reason.contents": "Não é possível ler o conteúdo do arquivo local atual",
|
||||
"agentManager.apply.reason.unknown": "Conflito detectado",
|
||||
"agentManager.apply.inline.success": "Aplicado",
|
||||
"agentManager.apply.inline.conflict": "Conflitos",
|
||||
"agentManager.apply.inline.error": "Falhou",
|
||||
"agentManager.shortcuts.toggleDiff": "Alternar painel de diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Troca rápida",
|
||||
"agentManager.shortcuts.jumpToItem": "Ir para o item 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Enviar tudo para o chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Enviar tudo para o chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Comentar na linha {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Editar comentário na linha {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Deixe um comentário...",
|
||||
"agentManager.review.commentAction": "Comentar",
|
||||
"agentManager.review.sendToChat": "Enviar para o chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} recolhidos",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} recolhidos, {{large}} grandes",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Cole a URL do PR...",
|
||||
"agentManager.import.open": "Abrir",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Selecionar branch...",
|
||||
"agentManager.import.loading": "Carregando...",
|
||||
"agentManager.import.loadingBranches": "Carregando branches...",
|
||||
"agentManager.import.noMatchingBranches": "Nenhum branch correspondente",
|
||||
"agentManager.import.noBranchesFound": "Nenhum branch encontrado.",
|
||||
"agentManager.import.noBranchesHint": "Cole uma URL de PR acima ou crie um novo Worktree.",
|
||||
"agentManager.import.failed": "Falha na importação",
|
||||
|
||||
"question.summary": "{{n}} de {{total}} perguntas",
|
||||
"common.review": "Revisar",
|
||||
|
||||
@@ -977,146 +977,8 @@ export const dict = {
|
||||
"dialog.model.notSet": "Nije postavljeno",
|
||||
"profile.personalAccount": "Osobni račun",
|
||||
|
||||
"agentManager.local": "lokalno",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESIJE",
|
||||
"agentManager.notGitRepo": "Nije git repozitorij",
|
||||
"agentManager.worktree.settings": "Postavke Worktree-a",
|
||||
"agentManager.worktree.new": "Novi Worktree",
|
||||
"agentManager.worktree.setupScript": "Skripta za postavljanje Worktree-a",
|
||||
"agentManager.worktree.delete": "Obriši Worktree",
|
||||
"agentManager.worktree.stale": "Zastario",
|
||||
"agentManager.worktree.staleTooltip": "Nedostaje na disku ili ga git worktree više ne prati",
|
||||
"agentManager.worktree.removeStale": "Ukloni zastarjeli Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Dvostruki klik za preimenovanje",
|
||||
"agentManager.worktree.versions": "{{count}} verzija",
|
||||
"agentManager.worktree.advancedOptions": "Napredne opcije Worktree-a",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Baza",
|
||||
"agentManager.hoverCard.sessions": "Sesije",
|
||||
"agentManager.hoverCard.files": "Datoteke",
|
||||
"agentManager.hoverCard.changes": "Promjene",
|
||||
"agentManager.hoverCard.commits": "Commiti",
|
||||
"agentManager.session.new": "Nova sesija",
|
||||
"agentManager.session.untitled": "Bez naslova",
|
||||
"agentManager.session.newSession": "Nova sesija",
|
||||
"agentManager.session.openInWorktree": "Otvori u Worktree-u",
|
||||
"agentManager.session.readonly": "Sesija samo za čitanje",
|
||||
"agentManager.session.noSessions": "Nema otvorenih sesija",
|
||||
"agentManager.tab.close": "Zatvori",
|
||||
"agentManager.tab.closeTab": "Zatvori karticu",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Otvori Terminal",
|
||||
"agentManager.setup.failed": "Postavljanje radnog prostora neuspješno",
|
||||
"agentManager.setup.settingUp": "Postavljanje radnog prostora",
|
||||
"agentManager.shortcuts.title": "Prečice na tastaturi",
|
||||
"agentManager.shortcuts.category.sidebar": "Bočna traka",
|
||||
"agentManager.shortcuts.category.tabs": "Kartice",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Globalno",
|
||||
"agentManager.shortcuts.previousItem": "Prethodni element",
|
||||
"agentManager.shortcuts.nextItem": "Sljedeći element",
|
||||
"agentManager.shortcuts.newWorktree": "Novi Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Napredni Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Obriši Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Prethodna kartica",
|
||||
"agentManager.shortcuts.nextTab": "Sljedeća kartica",
|
||||
"agentManager.shortcuts.newTab": "Nova kartica",
|
||||
"agentManager.shortcuts.closeTab": "Zatvori karticu",
|
||||
"agentManager.shortcuts.toggleTerminal": "Prebaci terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokusiraj panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Otvori Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Obriši Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Obriši Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Ovo uklanja Worktree sa diska i odvezuje sve sesije.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Otkaži",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Obriši",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/bs.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Ukloni zastarjeli Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Ukloni zastarjeli Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Ovo uklanja samo mapiranje u Agent Manageru i ne dira datoteke na disku.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Otkaži",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Ukloni zastarjeli Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Novi worktree",
|
||||
"agentManager.dialog.tab.new": "Novo",
|
||||
"agentManager.dialog.tab.import": "Uvezi",
|
||||
"agentManager.dialog.namePlaceholder": "Naziv Worktree-a (opcionalno)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Unesite poruku (⌘Enter za slanje)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Unesite poruku (Ctrl+Enter za slanje)",
|
||||
"agentManager.dialog.advancedOptions": "Napredne opcije",
|
||||
"agentManager.dialog.branchName": "Naziv brancha",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatski generirano",
|
||||
"agentManager.dialog.baseBranch": "Osnovni branch",
|
||||
"agentManager.dialog.searchBranches": "Pretraži brancheve...",
|
||||
"agentManager.dialog.branchBadge.default": "zadano",
|
||||
"agentManager.dialog.branchBadge.remote": "udaljeno",
|
||||
"agentManager.dialog.versions": "Verzije",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktree-ova će se pokrenuti paralelno",
|
||||
"agentManager.dialog.compareModels": "Uporedi modele",
|
||||
"agentManager.dialog.compareModels.searchModels": "Pretraži modele...",
|
||||
"agentManager.dialog.creating": "Kreiranje...",
|
||||
"agentManager.dialog.createWorkspace": "Kreiraj worktree",
|
||||
"agentManager.dialog.removeImage": "Ukloni sliku",
|
||||
"agentManager.dialog.advanced": "Napredno...",
|
||||
|
||||
"agentManager.diff.toggle": "Prebaci diff",
|
||||
"agentManager.diff.openFile": "Otvori datoteku",
|
||||
"agentManager.apply.button": "Primijeni lokalno",
|
||||
"agentManager.apply.globalButton": "Primijeni",
|
||||
"agentManager.apply.tooltip": "Primijeni promjene odabranog radnog stabla na lokalnu granu",
|
||||
"agentManager.apply.dialogTitle": "Primijeni promjene na lokalnu granu",
|
||||
"agentManager.apply.confirm": "Primijeni sada",
|
||||
"agentManager.apply.retry": "Ponovo pokušaj primjenu",
|
||||
"agentManager.apply.previewTitle": "Primijeniti ove promjene na lokalnu granu?",
|
||||
"agentManager.apply.previewSummary": "{{files}} datoteka, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} od {{total}} datoteka odabrano",
|
||||
"agentManager.apply.selectAll": "Odaberi sve",
|
||||
"agentManager.apply.selectNone": "Poništi odabir",
|
||||
"agentManager.apply.moreFiles": "+{{count}} više",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} više)",
|
||||
"agentManager.apply.checking": "Provjera...",
|
||||
"agentManager.apply.applying": "Primjenjivanje...",
|
||||
"agentManager.apply.success": "Promjene primijenjene",
|
||||
"agentManager.apply.conflict": "Primjena ima konflikte",
|
||||
"agentManager.apply.conflictToast": "{{count}} konflikata u {{files}} datoteka. Pregledajte detalje u Primijeni.",
|
||||
"agentManager.apply.error": "Primjena nije uspjela",
|
||||
"agentManager.apply.conflictsTitle": "Konflikti",
|
||||
"agentManager.apply.unknownFile": "Nerazriješena datoteka",
|
||||
"agentManager.apply.reason.index": "Lokalna datoteka se razlikuje od očekivane verzije",
|
||||
"agentManager.apply.reason.patch": "Zakrpa se ne može čisto primijeniti",
|
||||
"agentManager.apply.reason.contents": "Nije moguće pročitati sadržaj trenutne lokalne datoteke",
|
||||
"agentManager.apply.reason.unknown": "Otkriven konflikt",
|
||||
"agentManager.apply.inline.success": "Primijenjeno",
|
||||
"agentManager.apply.inline.conflict": "Konflikti",
|
||||
"agentManager.apply.inline.error": "Neuspjelo",
|
||||
"agentManager.shortcuts.toggleDiff": "Prebaci panel za diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Brzo prebacivanje",
|
||||
"agentManager.shortcuts.jumpToItem": "Idi na stavku 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Pošalji sve u chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Pošalji sve u chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Komentar na liniji {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Uredi komentar na liniji {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Ostavi komentar...",
|
||||
"agentManager.review.commentAction": "Komentariši",
|
||||
"agentManager.review.sendToChat": "Pošalji u chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} sažeto",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} sažeto, {{large}} velikih",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Zalijepite PR URL...",
|
||||
"agentManager.import.open": "Otvori",
|
||||
"agentManager.import.branches": "Branchevi",
|
||||
"agentManager.import.selectBranch": "Odaberite branch...",
|
||||
"agentManager.import.loading": "Učitavanje...",
|
||||
"agentManager.import.loadingBranches": "Učitavanje brancheva...",
|
||||
"agentManager.import.noMatchingBranches": "Nema odgovarajućih brancheva",
|
||||
"agentManager.import.noBranchesFound": "Nisu pronađeni branchevi.",
|
||||
"agentManager.import.noBranchesHint": "Zalijepite PR URL iznad ili kreirajte novi Worktree.",
|
||||
"agentManager.import.failed": "Uvoz neuspješan",
|
||||
|
||||
"question.summary": "{{n}} od {{total}} pitanja",
|
||||
"common.review": "Pregled",
|
||||
|
||||
@@ -950,146 +950,8 @@ export const dict = {
|
||||
"dialog.model.notSet": "Ikke angivet",
|
||||
"profile.personalAccount": "Personlig konto",
|
||||
|
||||
"agentManager.local": "lokal",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSIONER",
|
||||
"agentManager.notGitRepo": "Ikke et git-repository",
|
||||
"agentManager.worktree.settings": "Worktree-indstillinger",
|
||||
"agentManager.worktree.new": "Nyt Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree-opsætningsscript",
|
||||
"agentManager.worktree.delete": "Slet Worktree",
|
||||
"agentManager.worktree.stale": "Forældet",
|
||||
"agentManager.worktree.staleTooltip": "Mangler på disken eller spores ikke længere af git worktree",
|
||||
"agentManager.worktree.removeStale": "Fjern forældet Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Dobbeltklik for at omdøbe",
|
||||
"agentManager.worktree.versions": "{{count}} versioner",
|
||||
"agentManager.worktree.advancedOptions": "Avancerede Worktree-indstillinger",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessioner",
|
||||
"agentManager.hoverCard.files": "Filer",
|
||||
"agentManager.hoverCard.changes": "Ændringer",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Ny session",
|
||||
"agentManager.session.untitled": "Uden titel",
|
||||
"agentManager.session.newSession": "Ny session",
|
||||
"agentManager.session.openInWorktree": "Åbn i Worktree",
|
||||
"agentManager.session.readonly": "Skrivebeskyttet session",
|
||||
"agentManager.session.noSessions": "Ingen åbne sessioner",
|
||||
"agentManager.tab.close": "Luk",
|
||||
"agentManager.tab.closeTab": "Luk fane",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Åbn Terminal",
|
||||
"agentManager.setup.failed": "Opsætning af workspace mislykkedes",
|
||||
"agentManager.setup.settingUp": "Opsætter workspace",
|
||||
"agentManager.shortcuts.title": "Tastaturgenveje",
|
||||
"agentManager.shortcuts.category.sidebar": "Sidebjælke",
|
||||
"agentManager.shortcuts.category.tabs": "Faner",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Forrige element",
|
||||
"agentManager.shortcuts.nextItem": "Næste element",
|
||||
"agentManager.shortcuts.newWorktree": "Nyt Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Avanceret Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Slet Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Forrige fane",
|
||||
"agentManager.shortcuts.nextTab": "Næste fane",
|
||||
"agentManager.shortcuts.newTab": "Ny fane",
|
||||
"agentManager.shortcuts.closeTab": "Luk fane",
|
||||
"agentManager.shortcuts.toggleTerminal": "Skift terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokuser panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Åbn Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Slet Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Slet Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Dette fjerner Worktree fra disken og afkobler alle sessioner.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Annuller",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Slet",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/da.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Fjern forældet Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Fjern forældet Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Dette fjerner kun tilknytningen i Agent Manager og efterlader filer på disken urørt.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Annuller",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Fjern forældet Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Ny Worktree",
|
||||
"agentManager.dialog.tab.new": "Ny",
|
||||
"agentManager.dialog.tab.import": "Importér",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree-navn (valgfrit)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Skriv en besked (⌘Enter for at sende)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Skriv en besked (Ctrl+Enter for at sende)",
|
||||
"agentManager.dialog.advancedOptions": "Avancerede indstillinger",
|
||||
"agentManager.dialog.branchName": "Branch-navn",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatisk genereret",
|
||||
"agentManager.dialog.baseBranch": "Base-branch",
|
||||
"agentManager.dialog.searchBranches": "Søg branches...",
|
||||
"agentManager.dialog.branchBadge.default": "standard",
|
||||
"agentManager.dialog.branchBadge.remote": "fjern",
|
||||
"agentManager.dialog.versions": "Versioner",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees vil køre parallelt",
|
||||
"agentManager.dialog.compareModels": "Sammenlign modeller",
|
||||
"agentManager.dialog.compareModels.searchModels": "Søg modeller...",
|
||||
"agentManager.dialog.creating": "Opretter...",
|
||||
"agentManager.dialog.createWorkspace": "Opret Worktree",
|
||||
"agentManager.dialog.removeImage": "Fjern billede",
|
||||
"agentManager.dialog.advanced": "Avanceret...",
|
||||
|
||||
"agentManager.diff.toggle": "Skift diff",
|
||||
"agentManager.diff.openFile": "Åbn fil",
|
||||
"agentManager.apply.button": "Anvend lokalt",
|
||||
"agentManager.apply.globalButton": "Anvend",
|
||||
"agentManager.apply.tooltip": "Anvend valgte worktree-ændringer på den lokale gren",
|
||||
"agentManager.apply.dialogTitle": "Anvend ændringer på den lokale gren",
|
||||
"agentManager.apply.confirm": "Anvend nu",
|
||||
"agentManager.apply.retry": "Prøv at anvende igen",
|
||||
"agentManager.apply.previewTitle": "Anvend disse ændringer på den lokale gren?",
|
||||
"agentManager.apply.previewSummary": "{{files}} filer, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} af {{total}} filer valgt",
|
||||
"agentManager.apply.selectAll": "Vælg alle",
|
||||
"agentManager.apply.selectNone": "Fravælg alle",
|
||||
"agentManager.apply.moreFiles": "+{{count}} flere",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} flere)",
|
||||
"agentManager.apply.checking": "Kontrollerer...",
|
||||
"agentManager.apply.applying": "Anvender...",
|
||||
"agentManager.apply.success": "Ændringer anvendt",
|
||||
"agentManager.apply.conflict": "Anvendelse har konflikter",
|
||||
"agentManager.apply.conflictToast": "{{count}} konflikter i {{files}} filer. Gennemgå detaljer i Anvend.",
|
||||
"agentManager.apply.error": "Anvendelse mislykkedes",
|
||||
"agentManager.apply.conflictsTitle": "Konflikter",
|
||||
"agentManager.apply.unknownFile": "Uløst fil",
|
||||
"agentManager.apply.reason.index": "Lokal fil adskiller sig fra den forventede version",
|
||||
"agentManager.apply.reason.patch": "Patch kan ikke anvendes rent",
|
||||
"agentManager.apply.reason.contents": "Kan ikke læse det aktuelle lokale filindhold",
|
||||
"agentManager.apply.reason.unknown": "Konflikt opdaget",
|
||||
"agentManager.apply.inline.success": "Anvendt",
|
||||
"agentManager.apply.inline.conflict": "Konflikter",
|
||||
"agentManager.apply.inline.error": "Mislykkedes",
|
||||
"agentManager.shortcuts.toggleDiff": "Skift diff-panel",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Hurtigskift",
|
||||
"agentManager.shortcuts.jumpToItem": "Hop til element 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Send alt til chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Send alt til chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Kommenter på linje {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Rediger kommentar på linje {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Skriv en kommentar...",
|
||||
"agentManager.review.commentAction": "Kommenter",
|
||||
"agentManager.review.sendToChat": "Send til chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} foldet sammen",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} foldet sammen, {{large}} store",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Indsæt PR URL...",
|
||||
"agentManager.import.open": "Åbn",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Vælg branch...",
|
||||
"agentManager.import.loading": "Indlæser...",
|
||||
"agentManager.import.loadingBranches": "Indlæser branches...",
|
||||
"agentManager.import.noMatchingBranches": "Ingen matchende branches",
|
||||
"agentManager.import.noBranchesFound": "Ingen branches fundet.",
|
||||
"agentManager.import.noBranchesHint": "Indsæt en PR URL ovenfor eller opret et nyt Worktree.",
|
||||
"agentManager.import.failed": "Import mislykkedes",
|
||||
|
||||
"question.summary": "{{n}} af {{total}} spørgsmål",
|
||||
"common.review": "Gennemgå",
|
||||
|
||||
@@ -963,147 +963,8 @@ export const dict = {
|
||||
"dialog.model.notSet": "Nicht festgelegt",
|
||||
"profile.personalAccount": "Persönliches Konto",
|
||||
|
||||
"agentManager.local": "lokal",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SITZUNGEN",
|
||||
"agentManager.notGitRepo": "Kein Git-Repository",
|
||||
"agentManager.worktree.settings": "Worktree-Einstellungen",
|
||||
"agentManager.worktree.new": "Neuer Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree-Einrichtungsskript",
|
||||
"agentManager.worktree.delete": "Worktree löschen",
|
||||
"agentManager.worktree.stale": "Veraltet",
|
||||
"agentManager.worktree.staleTooltip": "Fehlt auf der Festplatte oder wird nicht mehr von git worktree verfolgt",
|
||||
"agentManager.worktree.removeStale": "Veralteten Worktree entfernen",
|
||||
"agentManager.worktree.doubleClickRename": "Doppelklick zum Umbenennen",
|
||||
"agentManager.worktree.versions": "{{count}} Versionen",
|
||||
"agentManager.worktree.advancedOptions": "Erweiterte Worktree-Optionen",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Basis",
|
||||
"agentManager.hoverCard.sessions": "Sitzungen",
|
||||
"agentManager.hoverCard.files": "Dateien",
|
||||
"agentManager.hoverCard.changes": "Änderungen",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Neue Sitzung",
|
||||
"agentManager.session.untitled": "Unbenannt",
|
||||
"agentManager.session.newSession": "Neue Sitzung",
|
||||
"agentManager.session.openInWorktree": "In Worktree öffnen",
|
||||
"agentManager.session.readonly": "Schreibgeschützte Sitzung",
|
||||
"agentManager.session.noSessions": "Keine Sitzungen geöffnet",
|
||||
"agentManager.tab.close": "Schließen",
|
||||
"agentManager.tab.closeTab": "Tab schließen",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Terminal öffnen",
|
||||
"agentManager.setup.failed": "Einrichtung des Arbeitsbereichs fehlgeschlagen",
|
||||
"agentManager.setup.settingUp": "Arbeitsbereich wird eingerichtet",
|
||||
"agentManager.shortcuts.title": "Tastenkombinationen",
|
||||
"agentManager.shortcuts.category.sidebar": "Seitenleiste",
|
||||
"agentManager.shortcuts.category.tabs": "Tabs",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Vorheriges Element",
|
||||
"agentManager.shortcuts.nextItem": "Nächstes Element",
|
||||
"agentManager.shortcuts.newWorktree": "Neuer Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Erweiterter Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Worktree löschen",
|
||||
"agentManager.shortcuts.previousTab": "Vorheriger Tab",
|
||||
"agentManager.shortcuts.nextTab": "Nächster Tab",
|
||||
"agentManager.shortcuts.newTab": "Neuer Tab",
|
||||
"agentManager.shortcuts.closeTab": "Tab schließen",
|
||||
"agentManager.shortcuts.toggleTerminal": "Terminal umschalten",
|
||||
"agentManager.shortcuts.focusPanel": "Panel fokussieren",
|
||||
"agentManager.shortcuts.openAgentManager": "Agent Manager öffnen",
|
||||
"agentManager.dialog.deleteWorktree.title": "Worktree löschen",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Worktree löschen ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? Dies entfernt den Worktree von der Festplatte und trennt alle Sitzungen.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Abbrechen",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Löschen",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/de.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Veralteten Worktree entfernen",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Veralteten Worktree entfernen ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Dies entfernt nur die Zuordnung im Agent Manager und lässt die Dateien auf der Festplatte unberührt.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Abbrechen",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Veralteten Worktree entfernen",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Neuer Worktree",
|
||||
"agentManager.dialog.tab.new": "Neu",
|
||||
"agentManager.dialog.tab.import": "Importieren",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree-Name (optional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Nachricht eingeben (⌘Enter zum Senden)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Nachricht eingeben (Strg+Enter zum Senden)",
|
||||
"agentManager.dialog.advancedOptions": "Erweiterte Optionen",
|
||||
"agentManager.dialog.branchName": "Branch-Name",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatisch generiert",
|
||||
"agentManager.dialog.baseBranch": "Basis-Branch",
|
||||
"agentManager.dialog.searchBranches": "Branches suchen...",
|
||||
"agentManager.dialog.branchBadge.default": "Standard",
|
||||
"agentManager.dialog.branchBadge.remote": "Remote",
|
||||
"agentManager.dialog.versions": "Versionen",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktrees werden parallel ausgeführt",
|
||||
"agentManager.dialog.compareModels": "Modelle vergleichen",
|
||||
"agentManager.dialog.compareModels.searchModels": "Modelle suchen...",
|
||||
"agentManager.dialog.creating": "Wird erstellt...",
|
||||
"agentManager.dialog.createWorkspace": "Worktree erstellen",
|
||||
"agentManager.dialog.removeImage": "Bild entfernen",
|
||||
"agentManager.dialog.advanced": "Erweitert...",
|
||||
|
||||
"agentManager.diff.toggle": "Diff umschalten",
|
||||
"agentManager.diff.openFile": "Datei öffnen",
|
||||
"agentManager.apply.button": "Lokal anwenden",
|
||||
"agentManager.apply.globalButton": "Anwenden",
|
||||
"agentManager.apply.tooltip": "Ausgewählte Worktree-Änderungen auf den lokalen Branch anwenden",
|
||||
"agentManager.apply.dialogTitle": "Änderungen auf den lokalen Branch anwenden",
|
||||
"agentManager.apply.confirm": "Jetzt anwenden",
|
||||
"agentManager.apply.retry": "Anwenden erneut versuchen",
|
||||
"agentManager.apply.previewTitle": "Diese Änderungen auf den lokalen Branch anwenden?",
|
||||
"agentManager.apply.previewSummary": "{{files}} Dateien, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} von {{total}} Dateien ausgewählt",
|
||||
"agentManager.apply.selectAll": "Alle auswählen",
|
||||
"agentManager.apply.selectNone": "Keine auswählen",
|
||||
"agentManager.apply.moreFiles": "+{{count}} weitere",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} weitere)",
|
||||
"agentManager.apply.checking": "Prüfe...",
|
||||
"agentManager.apply.applying": "Wird angewendet...",
|
||||
"agentManager.apply.success": "Änderungen angewendet",
|
||||
"agentManager.apply.conflict": "Anwenden hat Konflikte",
|
||||
"agentManager.apply.conflictToast": "{{count}} Konflikte in {{files}} Dateien. Details unter Anwenden prüfen.",
|
||||
"agentManager.apply.error": "Anwenden fehlgeschlagen",
|
||||
"agentManager.apply.conflictsTitle": "Konflikte",
|
||||
"agentManager.apply.unknownFile": "Ungelöste Datei",
|
||||
"agentManager.apply.reason.index": "Lokale Datei weicht von der erwarteten Version ab",
|
||||
"agentManager.apply.reason.patch": "Patch kann nicht sauber angewendet werden",
|
||||
"agentManager.apply.reason.contents": "Inhalt der aktuellen lokalen Datei kann nicht gelesen werden",
|
||||
"agentManager.apply.reason.unknown": "Konflikt erkannt",
|
||||
"agentManager.apply.inline.success": "Angewendet",
|
||||
"agentManager.apply.inline.conflict": "Konflikte",
|
||||
"agentManager.apply.inline.error": "Fehlgeschlagen",
|
||||
"agentManager.shortcuts.toggleDiff": "Diff-Panel umschalten",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Schnellwechsel",
|
||||
"agentManager.shortcuts.jumpToItem": "Zu Element 1\u20139 springen",
|
||||
"agentManager.review.sendAllToChat": "Alles an den Chat senden",
|
||||
"agentManager.review.sendAllToChatWithCount": "Alles an den Chat senden ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Kommentar zu Zeile {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Kommentar zu Zeile {{line}} bearbeiten",
|
||||
"agentManager.review.commentPlaceholder": "Kommentar hinterlassen...",
|
||||
"agentManager.review.commentAction": "Kommentieren",
|
||||
"agentManager.review.sendToChat": "An Chat senden",
|
||||
"agentManager.review.collapsedOnly": "{{count}} eingeklappt",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} eingeklappt, {{large}} groß",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "PR-URL einfügen...",
|
||||
"agentManager.import.open": "Öffnen",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Branch auswählen...",
|
||||
"agentManager.import.loading": "Laden...",
|
||||
"agentManager.import.loadingBranches": "Branches werden geladen...",
|
||||
"agentManager.import.noMatchingBranches": "Keine passenden Branches",
|
||||
"agentManager.import.noBranchesFound": "Keine Branches gefunden.",
|
||||
"agentManager.import.noBranchesHint": "Fügen Sie oben eine PR-URL ein oder erstellen Sie einen neuen Worktree.",
|
||||
"agentManager.import.failed": "Import fehlgeschlagen",
|
||||
|
||||
"question.summary": "{{n}} von {{total}} Fragen",
|
||||
"common.review": "Überprüfen",
|
||||
|
||||
@@ -996,157 +996,8 @@ export const dict = {
|
||||
|
||||
"profile.personalAccount": "Personal Account",
|
||||
|
||||
// Agent Manager
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSIONS",
|
||||
"agentManager.notGitRepo": "Not a git repository",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/en.ts
|
||||
|
||||
"agentManager.worktree.settings": "Worktree settings",
|
||||
"agentManager.worktree.new": "New Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree Setup Script",
|
||||
"agentManager.worktree.delete": "Delete worktree",
|
||||
"agentManager.worktree.stale": "Stale",
|
||||
"agentManager.worktree.staleTooltip": "Missing on disk or no longer tracked by git worktree",
|
||||
"agentManager.worktree.removeStale": "Remove stale worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Double-click to rename",
|
||||
"agentManager.worktree.versions": "{{count}} versions",
|
||||
"agentManager.worktree.advancedOptions": "Advanced worktree options",
|
||||
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessions",
|
||||
"agentManager.hoverCard.files": "Files",
|
||||
"agentManager.hoverCard.changes": "Changes",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
|
||||
"agentManager.session.new": "New session",
|
||||
"agentManager.session.untitled": "Untitled",
|
||||
"agentManager.session.newSession": "New Session",
|
||||
"agentManager.session.openInWorktree": "Open in worktree",
|
||||
"agentManager.session.readonly": "Read-only session",
|
||||
"agentManager.session.noSessions": "No sessions open",
|
||||
|
||||
"agentManager.tab.close": "Close",
|
||||
"agentManager.tab.closeTab": "Close tab",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Open Terminal",
|
||||
|
||||
"agentManager.setup.failed": "Workspace setup failed",
|
||||
"agentManager.setup.settingUp": "Setting up workspace",
|
||||
|
||||
"agentManager.shortcuts.title": "Keyboard Shortcuts",
|
||||
"agentManager.shortcuts.category.sidebar": "Sidebar",
|
||||
"agentManager.shortcuts.category.tabs": "Tabs",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Previous item",
|
||||
"agentManager.shortcuts.nextItem": "Next item",
|
||||
"agentManager.shortcuts.newWorktree": "New worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Advanced worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Delete worktree",
|
||||
"agentManager.shortcuts.previousTab": "Previous tab",
|
||||
"agentManager.shortcuts.nextTab": "Next tab",
|
||||
"agentManager.shortcuts.newTab": "New tab",
|
||||
"agentManager.shortcuts.closeTab": "Close tab",
|
||||
"agentManager.shortcuts.toggleTerminal": "Toggle terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Focus panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Open Agent Manager",
|
||||
|
||||
"agentManager.dialog.deleteWorktree.title": "Delete Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Delete worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? This removes the worktree from disk and dissociates all sessions.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Cancel",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Delete",
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Remove Stale Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Remove stale worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? This only removes the Agent Manager mapping and leaves files on disk untouched.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Cancel",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Remove stale worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "New Worktree",
|
||||
"agentManager.dialog.tab.new": "New",
|
||||
"agentManager.dialog.tab.import": "Import",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree name (optional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Type a message (\u2318Enter to send)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Type a message (Ctrl+Enter to send)",
|
||||
"agentManager.dialog.advancedOptions": "Advanced options",
|
||||
"agentManager.dialog.branchName": "Branch name",
|
||||
"agentManager.dialog.branchNamePlaceholder": "auto-generated",
|
||||
"agentManager.dialog.baseBranch": "Base branch",
|
||||
"agentManager.dialog.searchBranches": "Search branches...",
|
||||
"agentManager.dialog.branchBadge.default": "default",
|
||||
"agentManager.dialog.branchBadge.remote": "remote",
|
||||
"agentManager.dialog.versions": "Versions",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees will run in parallel",
|
||||
"agentManager.dialog.compareModels": "Compare Models",
|
||||
"agentManager.dialog.compareModels.searchModels": "Search models...",
|
||||
"agentManager.dialog.creating": "Creating...",
|
||||
"agentManager.dialog.createWorkspace": "Create Worktree",
|
||||
"agentManager.dialog.removeImage": "Remove image",
|
||||
"agentManager.dialog.advanced": "Advanced...",
|
||||
|
||||
"agentManager.diff.toggle": "Toggle diff",
|
||||
"agentManager.diff.openFile": "Open file",
|
||||
"agentManager.apply.button": "Apply to local",
|
||||
"agentManager.apply.globalButton": "Apply",
|
||||
"agentManager.apply.tooltip": "Apply selected worktree changes to local branch",
|
||||
"agentManager.apply.dialogTitle": "Apply changes to local branch",
|
||||
"agentManager.apply.confirm": "Apply now",
|
||||
"agentManager.apply.retry": "Retry apply",
|
||||
"agentManager.apply.previewTitle": "Apply these changes to local branch?",
|
||||
"agentManager.apply.previewSummary": "{{files}} files, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} of {{total}} files selected",
|
||||
"agentManager.apply.selectAll": "Select all",
|
||||
"agentManager.apply.selectNone": "Select none",
|
||||
"agentManager.apply.moreFiles": "+{{count}} more",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} more)",
|
||||
"agentManager.apply.checking": "Checking...",
|
||||
"agentManager.apply.applying": "Applying...",
|
||||
"agentManager.apply.success": "Changes applied",
|
||||
"agentManager.apply.conflict": "Apply has conflicts",
|
||||
"agentManager.apply.conflictToast": "{{count}} conflicts in {{files}} files. Review details in Apply.",
|
||||
"agentManager.apply.error": "Apply failed",
|
||||
"agentManager.apply.conflictsTitle": "Conflicts",
|
||||
"agentManager.apply.unknownFile": "Unresolved file",
|
||||
"agentManager.apply.reason.index": "Local file differs from expected version",
|
||||
"agentManager.apply.reason.patch": "Patch cannot be applied cleanly",
|
||||
"agentManager.apply.reason.contents": "Cannot read current local file contents",
|
||||
"agentManager.apply.reason.unknown": "Conflict detected",
|
||||
"agentManager.apply.inline.success": "Applied",
|
||||
"agentManager.apply.inline.conflict": "Conflicts",
|
||||
"agentManager.apply.inline.error": "Failed",
|
||||
"agentManager.shortcuts.toggleDiff": "Toggle diff panel",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Quick Switch",
|
||||
"agentManager.shortcuts.jumpToItem": "Jump to item 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Send all to chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Send all to chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Comment on line {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Edit comment on line {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Leave a comment...",
|
||||
"agentManager.review.commentAction": "Comment",
|
||||
"agentManager.review.sendToChat": "Send to chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} collapsed",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} collapsed, {{large}} large",
|
||||
"agentManager.review.largeFileCollapsed": "Large file (collapsed)",
|
||||
"agentManager.review.endOfLongDiff": "You made it to the end!",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Paste PR URL...",
|
||||
"agentManager.import.open": "Open",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Select branch...",
|
||||
"agentManager.import.loading": "Loading...",
|
||||
"agentManager.import.loadingBranches": "Loading branches...",
|
||||
"agentManager.import.noMatchingBranches": "No matching branches",
|
||||
"agentManager.import.noBranchesFound": "No branches found.",
|
||||
"agentManager.import.noBranchesHint": "Paste a PR URL above or create a new worktree.",
|
||||
"agentManager.import.failed": "Import failed",
|
||||
|
||||
"question.summary": "{{n}} of {{total}} questions",
|
||||
"common.review": "Review",
|
||||
|
||||
@@ -957,147 +957,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "No establecido (usar predeterminado del servidor)",
|
||||
"dialog.model.notSet": "No establecido",
|
||||
"profile.personalAccount": "Cuenta personal",
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESIONES",
|
||||
"agentManager.notGitRepo": "No es un repositorio git",
|
||||
"agentManager.worktree.settings": "Configuración de Worktree",
|
||||
"agentManager.worktree.new": "Nuevo Worktree",
|
||||
"agentManager.worktree.setupScript": "Script de configuración de Worktree",
|
||||
"agentManager.worktree.delete": "Eliminar Worktree",
|
||||
"agentManager.worktree.stale": "Obsoleto",
|
||||
"agentManager.worktree.staleTooltip": "No está en disco o ya no está seguido por git worktree",
|
||||
"agentManager.worktree.removeStale": "Eliminar Worktree obsoleto",
|
||||
"agentManager.worktree.doubleClickRename": "Doble clic para renombrar",
|
||||
"agentManager.worktree.versions": "{{count}} versiones",
|
||||
"agentManager.worktree.advancedOptions": "Opciones avanzadas de Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sesiones",
|
||||
"agentManager.hoverCard.files": "Archivos",
|
||||
"agentManager.hoverCard.changes": "Cambios",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Nueva sesión",
|
||||
"agentManager.session.untitled": "Sin título",
|
||||
"agentManager.session.newSession": "Nueva Sesión",
|
||||
"agentManager.session.openInWorktree": "Abrir en Worktree",
|
||||
"agentManager.session.readonly": "Sesión de solo lectura",
|
||||
"agentManager.session.noSessions": "No hay sesiones abiertas",
|
||||
"agentManager.tab.close": "Cerrar",
|
||||
"agentManager.tab.closeTab": "Cerrar pestaña",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Abrir Terminal",
|
||||
"agentManager.setup.failed": "Error en la configuración del workspace",
|
||||
"agentManager.setup.settingUp": "Configurando workspace",
|
||||
"agentManager.shortcuts.title": "Atajos de teclado",
|
||||
"agentManager.shortcuts.category.sidebar": "Barra lateral",
|
||||
"agentManager.shortcuts.category.tabs": "Pestañas",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Elemento anterior",
|
||||
"agentManager.shortcuts.nextItem": "Siguiente elemento",
|
||||
"agentManager.shortcuts.newWorktree": "Nuevo Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree avanzado",
|
||||
"agentManager.shortcuts.deleteWorktree": "Eliminar Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Pestaña anterior",
|
||||
"agentManager.shortcuts.nextTab": "Siguiente pestaña",
|
||||
"agentManager.shortcuts.newTab": "Nueva pestaña",
|
||||
"agentManager.shortcuts.closeTab": "Cerrar pestaña",
|
||||
"agentManager.shortcuts.toggleTerminal": "Alternar terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Enfocar panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Abrir Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Eliminar Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "¿Eliminar Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? Esto elimina el Worktree del disco y desasocia todas las sesiones.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Eliminar",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/es.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Eliminar Worktree obsoleto",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "¿Eliminar Worktree obsoleto ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Esto solo elimina la asociación en Agent Manager y no modifica los archivos en disco.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Cancelar",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Eliminar Worktree obsoleto",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Nuevo Worktree",
|
||||
"agentManager.dialog.tab.new": "Nuevo",
|
||||
"agentManager.dialog.tab.import": "Importar",
|
||||
"agentManager.dialog.namePlaceholder": "Nombre del Worktree (opcional)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Escribe un mensaje (⌘Enter para enviar)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Escribe un mensaje (Ctrl+Enter para enviar)",
|
||||
"agentManager.dialog.advancedOptions": "Opciones avanzadas",
|
||||
"agentManager.dialog.branchName": "Nombre del branch",
|
||||
"agentManager.dialog.branchNamePlaceholder": "generado automáticamente",
|
||||
"agentManager.dialog.baseBranch": "Branch base",
|
||||
"agentManager.dialog.searchBranches": "Buscar branches...",
|
||||
"agentManager.dialog.branchBadge.default": "predeterminado",
|
||||
"agentManager.dialog.branchBadge.remote": "remoto",
|
||||
"agentManager.dialog.versions": "Versiones",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees se ejecutarán en paralelo",
|
||||
"agentManager.dialog.compareModels": "Comparar modelos",
|
||||
"agentManager.dialog.compareModels.searchModels": "Buscar modelos...",
|
||||
"agentManager.dialog.creating": "Creando...",
|
||||
"agentManager.dialog.createWorkspace": "Crear Worktree",
|
||||
"agentManager.dialog.removeImage": "Eliminar imagen",
|
||||
"agentManager.dialog.advanced": "Avanzado...",
|
||||
|
||||
"agentManager.diff.toggle": "Alternar diff",
|
||||
"agentManager.diff.openFile": "Abrir archivo",
|
||||
"agentManager.apply.button": "Aplicar en local",
|
||||
"agentManager.apply.globalButton": "Aplicar",
|
||||
"agentManager.apply.tooltip": "Aplicar los cambios del worktree seleccionado a la rama local",
|
||||
"agentManager.apply.dialogTitle": "Aplicar cambios a la rama local",
|
||||
"agentManager.apply.confirm": "Aplicar ahora",
|
||||
"agentManager.apply.retry": "Reintentar aplicación",
|
||||
"agentManager.apply.previewTitle": "¿Aplicar estos cambios a la rama local?",
|
||||
"agentManager.apply.previewSummary": "{{files}} archivos, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} de {{total}} archivos seleccionados",
|
||||
"agentManager.apply.selectAll": "Seleccionar todos",
|
||||
"agentManager.apply.selectNone": "Deseleccionar todos",
|
||||
"agentManager.apply.moreFiles": "+{{count}} más",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} más)",
|
||||
"agentManager.apply.checking": "Verificando...",
|
||||
"agentManager.apply.applying": "Aplicando...",
|
||||
"agentManager.apply.success": "Cambios aplicados",
|
||||
"agentManager.apply.conflict": "La aplicación tiene conflictos",
|
||||
"agentManager.apply.conflictToast": "{{count}} conflictos en {{files}} archivos. Revise los detalles en Aplicar.",
|
||||
"agentManager.apply.error": "La aplicación falló",
|
||||
"agentManager.apply.conflictsTitle": "Conflictos",
|
||||
"agentManager.apply.unknownFile": "Archivo no resuelto",
|
||||
"agentManager.apply.reason.index": "El archivo local difiere de la versión esperada",
|
||||
"agentManager.apply.reason.patch": "El parche no se puede aplicar limpiamente",
|
||||
"agentManager.apply.reason.contents": "No se puede leer el contenido del archivo local actual",
|
||||
"agentManager.apply.reason.unknown": "Conflicto detectado",
|
||||
"agentManager.apply.inline.success": "Aplicado",
|
||||
"agentManager.apply.inline.conflict": "Conflictos",
|
||||
"agentManager.apply.inline.error": "Falló",
|
||||
"agentManager.shortcuts.toggleDiff": "Alternar panel de diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Cambio rápido",
|
||||
"agentManager.shortcuts.jumpToItem": "Ir al elemento 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Enviar todo al chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Enviar todo al chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Comentar en la línea {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Editar comentario en la línea {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Deja un comentario...",
|
||||
"agentManager.review.commentAction": "Comentar",
|
||||
"agentManager.review.sendToChat": "Enviar al chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} contraídos",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} contraídos, {{large}} grandes",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Pegar URL del PR...",
|
||||
"agentManager.import.open": "Abrir",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Seleccionar branch...",
|
||||
"agentManager.import.loading": "Cargando...",
|
||||
"agentManager.import.loadingBranches": "Cargando branches...",
|
||||
"agentManager.import.noMatchingBranches": "No hay branches coincidentes",
|
||||
"agentManager.import.noBranchesFound": "No se encontraron branches.",
|
||||
"agentManager.import.noBranchesHint": "Pega una URL de PR arriba o crea un nuevo Worktree.",
|
||||
"agentManager.import.failed": "Error en la importación",
|
||||
|
||||
"question.summary": "{{n}} de {{total}} preguntas",
|
||||
"common.review": "Revisar",
|
||||
|
||||
@@ -965,148 +965,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "Non défini (utiliser la valeur par défaut du serveur)",
|
||||
"dialog.model.notSet": "Non défini",
|
||||
"profile.personalAccount": "Compte personnel",
|
||||
"agentManager.local": "local",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESSIONS",
|
||||
"agentManager.notGitRepo": "Ce n'est pas un dépôt git",
|
||||
"agentManager.worktree.settings": "Paramètres du Worktree",
|
||||
"agentManager.worktree.new": "Nouveau Worktree",
|
||||
"agentManager.worktree.setupScript": "Script de configuration du Worktree",
|
||||
"agentManager.worktree.delete": "Supprimer le Worktree",
|
||||
"agentManager.worktree.stale": "Obsolète",
|
||||
"agentManager.worktree.staleTooltip": "Absent du disque ou n'est plus suivi par git worktree",
|
||||
"agentManager.worktree.removeStale": "Supprimer le Worktree obsolète",
|
||||
"agentManager.worktree.doubleClickRename": "Double-cliquez pour renommer",
|
||||
"agentManager.worktree.versions": "{{count}} versions",
|
||||
"agentManager.worktree.advancedOptions": "Options avancées du Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCHE",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Sessions",
|
||||
"agentManager.hoverCard.files": "Fichiers",
|
||||
"agentManager.hoverCard.changes": "Modifications",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Nouvelle session",
|
||||
"agentManager.session.untitled": "Sans titre",
|
||||
"agentManager.session.newSession": "Nouvelle session",
|
||||
"agentManager.session.openInWorktree": "Ouvrir dans le Worktree",
|
||||
"agentManager.session.readonly": "Session en lecture seule",
|
||||
"agentManager.session.noSessions": "Aucune session ouverte",
|
||||
"agentManager.tab.close": "Fermer",
|
||||
"agentManager.tab.closeTab": "Fermer l'onglet",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Ouvrir le Terminal",
|
||||
"agentManager.setup.failed": "Échec de la configuration de l'espace de travail",
|
||||
"agentManager.setup.settingUp": "Configuration de l'espace de travail",
|
||||
"agentManager.shortcuts.title": "Raccourcis clavier",
|
||||
"agentManager.shortcuts.category.sidebar": "Barre latérale",
|
||||
"agentManager.shortcuts.category.tabs": "Onglets",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Élément précédent",
|
||||
"agentManager.shortcuts.nextItem": "Élément suivant",
|
||||
"agentManager.shortcuts.newWorktree": "Nouveau Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree avancé",
|
||||
"agentManager.shortcuts.deleteWorktree": "Supprimer le Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Onglet précédent",
|
||||
"agentManager.shortcuts.nextTab": "Onglet suivant",
|
||||
"agentManager.shortcuts.newTab": "Nouvel onglet",
|
||||
"agentManager.shortcuts.closeTab": "Fermer l'onglet",
|
||||
"agentManager.shortcuts.toggleTerminal": "Basculer le terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Focaliser le panneau",
|
||||
"agentManager.shortcuts.openAgentManager": "Ouvrir Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Supprimer le Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Supprimer le Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
" ? Cela supprime le Worktree du disque et dissocie toutes les sessions.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Annuler",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Supprimer",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/fr.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Supprimer le Worktree obsolète",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Supprimer le Worktree obsolète ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
" ? Cela supprime uniquement l'association dans Agent Manager et laisse les fichiers du disque inchangés.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Annuler",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Supprimer le Worktree obsolète",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Nouveau worktree",
|
||||
"agentManager.dialog.tab.new": "Nouveau",
|
||||
"agentManager.dialog.tab.import": "Importer",
|
||||
"agentManager.dialog.namePlaceholder": "Nom du Worktree (optionnel)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Saisissez un message (⌘Entrée pour envoyer)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Saisissez un message (Ctrl+Entrée pour envoyer)",
|
||||
"agentManager.dialog.advancedOptions": "Options avancées",
|
||||
"agentManager.dialog.branchName": "Nom de la branche",
|
||||
"agentManager.dialog.branchNamePlaceholder": "généré automatiquement",
|
||||
"agentManager.dialog.baseBranch": "Branche de base",
|
||||
"agentManager.dialog.searchBranches": "Rechercher des branches...",
|
||||
"agentManager.dialog.branchBadge.default": "par défaut",
|
||||
"agentManager.dialog.branchBadge.remote": "distant",
|
||||
"agentManager.dialog.versions": "Versions",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees s'exécuteront en parallèle",
|
||||
"agentManager.dialog.compareModels": "Comparer les modèles",
|
||||
"agentManager.dialog.compareModels.searchModels": "Rechercher des modèles...",
|
||||
"agentManager.dialog.creating": "Création...",
|
||||
"agentManager.dialog.createWorkspace": "Créer un worktree",
|
||||
"agentManager.dialog.removeImage": "Supprimer l'image",
|
||||
"agentManager.dialog.advanced": "Avancé...",
|
||||
|
||||
"agentManager.diff.toggle": "Basculer le diff",
|
||||
"agentManager.diff.openFile": "Ouvrir le fichier",
|
||||
"agentManager.apply.button": "Appliquer en local",
|
||||
"agentManager.apply.globalButton": "Appliquer",
|
||||
"agentManager.apply.tooltip": "Appliquer les modifications du worktree sélectionné à la branche locale",
|
||||
"agentManager.apply.dialogTitle": "Appliquer les modifications à la branche locale",
|
||||
"agentManager.apply.confirm": "Appliquer maintenant",
|
||||
"agentManager.apply.retry": "Réessayer l'application",
|
||||
"agentManager.apply.previewTitle": "Appliquer ces modifications à la branche locale ?",
|
||||
"agentManager.apply.previewSummary": "{{files}} fichiers, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} sur {{total}} fichiers sélectionnés",
|
||||
"agentManager.apply.selectAll": "Tout sélectionner",
|
||||
"agentManager.apply.selectNone": "Tout désélectionner",
|
||||
"agentManager.apply.moreFiles": "+{{count}} de plus",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} de plus)",
|
||||
"agentManager.apply.checking": "Vérification...",
|
||||
"agentManager.apply.applying": "Application...",
|
||||
"agentManager.apply.success": "Modifications appliquées",
|
||||
"agentManager.apply.conflict": "L'application comporte des conflits",
|
||||
"agentManager.apply.conflictToast":
|
||||
"{{count}} conflits dans {{files}} fichiers. Consultez les détails dans Appliquer.",
|
||||
"agentManager.apply.error": "Échec de l'application",
|
||||
"agentManager.apply.conflictsTitle": "Conflits",
|
||||
"agentManager.apply.unknownFile": "Fichier non résolu",
|
||||
"agentManager.apply.reason.index": "Le fichier local diffère de la version attendue",
|
||||
"agentManager.apply.reason.patch": "Le patch ne peut pas être appliqué proprement",
|
||||
"agentManager.apply.reason.contents": "Impossible de lire le contenu du fichier local actuel",
|
||||
"agentManager.apply.reason.unknown": "Conflit détecté",
|
||||
"agentManager.apply.inline.success": "Appliqué",
|
||||
"agentManager.apply.inline.conflict": "Conflits",
|
||||
"agentManager.apply.inline.error": "Échoué",
|
||||
"agentManager.shortcuts.toggleDiff": "Basculer le panneau de diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Changement rapide",
|
||||
"agentManager.shortcuts.jumpToItem": "Aller à l'élément 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Tout envoyer au chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Tout envoyer au chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Commenter la ligne {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Modifier le commentaire de la ligne {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Laisser un commentaire...",
|
||||
"agentManager.review.commentAction": "Commenter",
|
||||
"agentManager.review.sendToChat": "Envoyer au chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} repliés",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} repliés, {{large}} volumineux",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Coller l'URL du PR...",
|
||||
"agentManager.import.open": "Ouvrir",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Sélectionner une branche...",
|
||||
"agentManager.import.loading": "Chargement...",
|
||||
"agentManager.import.loadingBranches": "Chargement des branches...",
|
||||
"agentManager.import.noMatchingBranches": "Aucune branche correspondante",
|
||||
"agentManager.import.noBranchesFound": "Aucune branche trouvée.",
|
||||
"agentManager.import.noBranchesHint": "Collez une URL de PR ci-dessus ou créez un nouveau Worktree.",
|
||||
"agentManager.import.failed": "Échec de l'importation",
|
||||
|
||||
"question.summary": "{{n}} sur {{total}} questions",
|
||||
"common.review": "Réviser",
|
||||
|
||||
@@ -945,148 +945,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "未設定(サーバーのデフォルトを使用)",
|
||||
"dialog.model.notSet": "未設定",
|
||||
"profile.personalAccount": "個人アカウント",
|
||||
"agentManager.local": "ローカル",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "セッション",
|
||||
"agentManager.notGitRepo": "gitリポジトリではありません",
|
||||
"agentManager.worktree.settings": "Worktree設定",
|
||||
"agentManager.worktree.new": "新しいWorktree",
|
||||
"agentManager.worktree.setupScript": "Worktreeセットアップスクリプト",
|
||||
"agentManager.worktree.delete": "Worktreeを削除",
|
||||
"agentManager.worktree.stale": "無効",
|
||||
"agentManager.worktree.staleTooltip": "ディスク上に存在しないか、git worktree で追跡されていません",
|
||||
"agentManager.worktree.removeStale": "無効な Worktree を削除",
|
||||
"agentManager.worktree.doubleClickRename": "ダブルクリックで名前を変更",
|
||||
"agentManager.worktree.versions": "{{count}}バージョン",
|
||||
"agentManager.worktree.advancedOptions": "Worktreeの詳細オプション",
|
||||
"agentManager.hoverCard.branch": "ブランチ",
|
||||
"agentManager.hoverCard.base": "ベース",
|
||||
"agentManager.hoverCard.sessions": "セッション",
|
||||
"agentManager.hoverCard.files": "ファイル",
|
||||
"agentManager.hoverCard.changes": "変更",
|
||||
"agentManager.hoverCard.commits": "コミット",
|
||||
"agentManager.session.new": "新しいセッション",
|
||||
"agentManager.session.untitled": "無題",
|
||||
"agentManager.session.newSession": "新しいセッション",
|
||||
"agentManager.session.openInWorktree": "Worktreeで開く",
|
||||
"agentManager.session.readonly": "読み取り専用セッション",
|
||||
"agentManager.session.noSessions": "開いているセッションがありません",
|
||||
"agentManager.tab.close": "閉じる",
|
||||
"agentManager.tab.closeTab": "タブを閉じる",
|
||||
"agentManager.tab.terminal": "ターミナル",
|
||||
"agentManager.tab.openTerminal": "ターミナルを開く",
|
||||
"agentManager.setup.failed": "ワークスペースのセットアップに失敗しました",
|
||||
"agentManager.setup.settingUp": "ワークスペースをセットアップ中",
|
||||
"agentManager.shortcuts.title": "キーボードショートカット",
|
||||
"agentManager.shortcuts.category.sidebar": "サイドバー",
|
||||
"agentManager.shortcuts.category.tabs": "タブ",
|
||||
"agentManager.shortcuts.category.terminal": "ターミナル",
|
||||
"agentManager.shortcuts.category.global": "グローバル",
|
||||
"agentManager.shortcuts.previousItem": "前の項目",
|
||||
"agentManager.shortcuts.nextItem": "次の項目",
|
||||
"agentManager.shortcuts.newWorktree": "新しいWorktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "詳細Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Worktreeを削除",
|
||||
"agentManager.shortcuts.previousTab": "前のタブ",
|
||||
"agentManager.shortcuts.nextTab": "次のタブ",
|
||||
"agentManager.shortcuts.newTab": "新しいタブ",
|
||||
"agentManager.shortcuts.closeTab": "タブを閉じる",
|
||||
"agentManager.shortcuts.toggleTerminal": "ターミナルの切り替え",
|
||||
"agentManager.shortcuts.focusPanel": "パネルにフォーカス",
|
||||
"agentManager.shortcuts.openAgentManager": "Agent Managerを開く",
|
||||
"agentManager.dialog.deleteWorktree.title": "Worktreeを削除",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Worktreeを削除 ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? ディスクからWorktreeを削除し、すべてのセッションの関連付けを解除します。",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "キャンセル",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "削除",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/ja.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "無効な Worktree を削除",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "無効な Worktree を削除 ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? これは Agent Manager の関連付けのみを削除し、ディスク上のファイルは変更しません。",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "キャンセル",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "無効な Worktree を削除",
|
||||
|
||||
"agentManager.dialog.openWorktree": "新規ワークツリー",
|
||||
"agentManager.dialog.tab.new": "新規",
|
||||
"agentManager.dialog.tab.import": "インポート",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree名(任意)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "メッセージを入力(⌘Enterで送信)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "メッセージを入力(Ctrl+Enterで送信)",
|
||||
"agentManager.dialog.advancedOptions": "詳細オプション",
|
||||
"agentManager.dialog.branchName": "ブランチ名",
|
||||
"agentManager.dialog.branchNamePlaceholder": "自動生成",
|
||||
"agentManager.dialog.baseBranch": "ベースブランチ",
|
||||
"agentManager.dialog.searchBranches": "ブランチを検索...",
|
||||
"agentManager.dialog.branchBadge.default": "デフォルト",
|
||||
"agentManager.dialog.branchBadge.remote": "リモート",
|
||||
"agentManager.dialog.versions": "バージョン",
|
||||
"agentManager.dialog.versionHint": "{{count}}個のWorktreeが並行して実行されます",
|
||||
"agentManager.dialog.compareModels": "モデルを比較",
|
||||
"agentManager.dialog.compareModels.searchModels": "モデルを検索...",
|
||||
"agentManager.dialog.creating": "作成中...",
|
||||
"agentManager.dialog.createWorkspace": "ワークツリーを作成",
|
||||
"agentManager.dialog.removeImage": "画像を削除",
|
||||
"agentManager.dialog.advanced": "詳細...",
|
||||
|
||||
"agentManager.diff.toggle": "差分を切り替え",
|
||||
"agentManager.diff.openFile": "ファイルを開く",
|
||||
"agentManager.apply.button": "ローカルに適用",
|
||||
"agentManager.apply.globalButton": "適用",
|
||||
"agentManager.apply.tooltip": "選択したワークツリーの変更をローカルブランチに適用",
|
||||
"agentManager.apply.dialogTitle": "ローカルブランチに変更を適用",
|
||||
"agentManager.apply.confirm": "今すぐ適用",
|
||||
"agentManager.apply.retry": "適用を再試行",
|
||||
"agentManager.apply.previewTitle": "これらの変更をローカルブランチに適用しますか?",
|
||||
"agentManager.apply.previewSummary": "{{files}} ファイル、+{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{total}} ファイル中 {{selected}} 件選択",
|
||||
"agentManager.apply.selectAll": "すべて選択",
|
||||
"agentManager.apply.selectNone": "選択解除",
|
||||
"agentManager.apply.moreFiles": "+{{count}} 件",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} 件)",
|
||||
"agentManager.apply.checking": "確認中...",
|
||||
"agentManager.apply.applying": "適用中...",
|
||||
"agentManager.apply.success": "変更が適用されました",
|
||||
"agentManager.apply.conflict": "適用に競合があります",
|
||||
"agentManager.apply.conflictToast":
|
||||
"{{files}} ファイルに {{count}} 件の競合があります。適用で詳細を確認してください。",
|
||||
"agentManager.apply.error": "適用に失敗しました",
|
||||
"agentManager.apply.conflictsTitle": "競合",
|
||||
"agentManager.apply.unknownFile": "未解決のファイル",
|
||||
"agentManager.apply.reason.index": "ローカルファイルが期待されるバージョンと異なります",
|
||||
"agentManager.apply.reason.patch": "パッチをクリーンに適用できません",
|
||||
"agentManager.apply.reason.contents": "現在のローカルファイルの内容を読み取れません",
|
||||
"agentManager.apply.reason.unknown": "競合が検出されました",
|
||||
"agentManager.apply.inline.success": "適用済み",
|
||||
"agentManager.apply.inline.conflict": "競合",
|
||||
"agentManager.apply.inline.error": "失敗",
|
||||
"agentManager.shortcuts.toggleDiff": "差分パネルを切り替え",
|
||||
"agentManager.shortcuts.category.quickSwitch": "クイック切り替え",
|
||||
"agentManager.shortcuts.jumpToItem": "項目 1\u20139 に移動",
|
||||
"agentManager.review.sendAllToChat": "すべてをチャットに送信",
|
||||
"agentManager.review.sendAllToChatWithCount": "すべてをチャットに送信 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "{{line}} 行目にコメント",
|
||||
"agentManager.review.editCommentOnLine": "{{line}} 行目のコメントを編集",
|
||||
"agentManager.review.commentPlaceholder": "コメントを入力...",
|
||||
"agentManager.review.commentAction": "コメント",
|
||||
"agentManager.review.sendToChat": "チャットに送信",
|
||||
"agentManager.review.collapsedOnly": "{{count}} 件折りたたみ",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} 件折りたたみ、{{large}} 件がサイズ大",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "PR URLを貼り付け...",
|
||||
"agentManager.import.open": "開く",
|
||||
"agentManager.import.branches": "ブランチ",
|
||||
"agentManager.import.selectBranch": "ブランチを選択...",
|
||||
"agentManager.import.loading": "読み込み中...",
|
||||
"agentManager.import.loadingBranches": "ブランチを読み込み中...",
|
||||
"agentManager.import.noMatchingBranches": "一致するブランチがありません",
|
||||
"agentManager.import.noBranchesFound": "ブランチが見つかりません。",
|
||||
"agentManager.import.noBranchesHint": "上にPR URLを貼り付けるか、新しいWorktreeを作成してください。",
|
||||
"agentManager.import.failed": "インポートに失敗しました",
|
||||
|
||||
"question.summary": "{{total}} 問中 {{n}} 問目",
|
||||
"common.review": "確認",
|
||||
|
||||
@@ -946,147 +946,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "설정되지 않음 (서버 기본값 사용)",
|
||||
"dialog.model.notSet": "설정되지 않음",
|
||||
"profile.personalAccount": "개인 계정",
|
||||
"agentManager.local": "로컬",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "세션",
|
||||
"agentManager.notGitRepo": "git 저장소가 아닙니다",
|
||||
"agentManager.worktree.settings": "Worktree 설정",
|
||||
"agentManager.worktree.new": "새 Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree 설정 스크립트",
|
||||
"agentManager.worktree.delete": "Worktree 삭제",
|
||||
"agentManager.worktree.stale": "오래됨",
|
||||
"agentManager.worktree.staleTooltip": "디스크에 없거나 더 이상 git worktree에서 추적되지 않습니다",
|
||||
"agentManager.worktree.removeStale": "오래된 Worktree 제거",
|
||||
"agentManager.worktree.doubleClickRename": "더블 클릭하여 이름 변경",
|
||||
"agentManager.worktree.versions": "{{count}}개 버전",
|
||||
"agentManager.worktree.advancedOptions": "Worktree 고급 옵션",
|
||||
"agentManager.hoverCard.branch": "브랜치",
|
||||
"agentManager.hoverCard.base": "베이스",
|
||||
"agentManager.hoverCard.sessions": "세션",
|
||||
"agentManager.hoverCard.files": "파일",
|
||||
"agentManager.hoverCard.changes": "변경 사항",
|
||||
"agentManager.hoverCard.commits": "커밋",
|
||||
"agentManager.session.new": "새 세션",
|
||||
"agentManager.session.untitled": "제목 없음",
|
||||
"agentManager.session.newSession": "새 세션",
|
||||
"agentManager.session.openInWorktree": "Worktree에서 열기",
|
||||
"agentManager.session.readonly": "읽기 전용 세션",
|
||||
"agentManager.session.noSessions": "열린 세션 없음",
|
||||
"agentManager.tab.close": "닫기",
|
||||
"agentManager.tab.closeTab": "탭 닫기",
|
||||
"agentManager.tab.terminal": "터미널",
|
||||
"agentManager.tab.openTerminal": "터미널 열기",
|
||||
"agentManager.setup.failed": "워크스페이스 설정 실패",
|
||||
"agentManager.setup.settingUp": "워크스페이스 설정 중",
|
||||
"agentManager.shortcuts.title": "키보드 단축키",
|
||||
"agentManager.shortcuts.category.sidebar": "사이드바",
|
||||
"agentManager.shortcuts.category.tabs": "탭",
|
||||
"agentManager.shortcuts.category.terminal": "터미널",
|
||||
"agentManager.shortcuts.category.global": "전역",
|
||||
"agentManager.shortcuts.previousItem": "이전 항목",
|
||||
"agentManager.shortcuts.nextItem": "다음 항목",
|
||||
"agentManager.shortcuts.newWorktree": "새 Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "고급 Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Worktree 삭제",
|
||||
"agentManager.shortcuts.previousTab": "이전 탭",
|
||||
"agentManager.shortcuts.nextTab": "다음 탭",
|
||||
"agentManager.shortcuts.newTab": "새 탭",
|
||||
"agentManager.shortcuts.closeTab": "탭 닫기",
|
||||
"agentManager.shortcuts.toggleTerminal": "터미널 전환",
|
||||
"agentManager.shortcuts.focusPanel": "패널 포커스",
|
||||
"agentManager.shortcuts.openAgentManager": "Agent Manager 열기",
|
||||
"agentManager.dialog.deleteWorktree.title": "Worktree 삭제",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Worktree 삭제 ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? 디스크에서 Worktree를 제거하고 모든 세션의 연결을 해제합니다.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "취소",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "삭제",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/ko.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "오래된 Worktree 제거",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "오래된 Worktree 제거 ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? 이 작업은 Agent Manager 매핑만 제거하며 디스크의 파일은 변경하지 않습니다.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "취소",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "오래된 Worktree 제거",
|
||||
|
||||
"agentManager.dialog.openWorktree": "새 워크트리",
|
||||
"agentManager.dialog.tab.new": "새로 만들기",
|
||||
"agentManager.dialog.tab.import": "가져오기",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree 이름 (선택사항)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "메시지를 입력하세요 (⌘Enter로 전송)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "메시지를 입력하세요 (Ctrl+Enter로 전송)",
|
||||
"agentManager.dialog.advancedOptions": "고급 옵션",
|
||||
"agentManager.dialog.branchName": "브랜치 이름",
|
||||
"agentManager.dialog.branchNamePlaceholder": "자동 생성",
|
||||
"agentManager.dialog.baseBranch": "베이스 브랜치",
|
||||
"agentManager.dialog.searchBranches": "브랜치 검색...",
|
||||
"agentManager.dialog.branchBadge.default": "기본",
|
||||
"agentManager.dialog.branchBadge.remote": "원격",
|
||||
"agentManager.dialog.versions": "버전",
|
||||
"agentManager.dialog.versionHint": "{{count}}개의 Worktree가 병렬로 실행됩니다",
|
||||
"agentManager.dialog.compareModels": "모델 비교",
|
||||
"agentManager.dialog.compareModels.searchModels": "모델 검색...",
|
||||
"agentManager.dialog.creating": "생성 중...",
|
||||
"agentManager.dialog.createWorkspace": "워크트리 생성",
|
||||
"agentManager.dialog.removeImage": "이미지 제거",
|
||||
"agentManager.dialog.advanced": "고급...",
|
||||
|
||||
"agentManager.diff.toggle": "차이점 전환",
|
||||
"agentManager.diff.openFile": "파일 열기",
|
||||
"agentManager.apply.button": "로컬에 적용",
|
||||
"agentManager.apply.globalButton": "적용",
|
||||
"agentManager.apply.tooltip": "선택한 워크트리 변경사항을 로컬 브랜치에 적용",
|
||||
"agentManager.apply.dialogTitle": "로컬 브랜치에 변경사항 적용",
|
||||
"agentManager.apply.confirm": "지금 적용",
|
||||
"agentManager.apply.retry": "적용 재시도",
|
||||
"agentManager.apply.previewTitle": "이 변경사항을 로컬 브랜치에 적용하시겠습니까?",
|
||||
"agentManager.apply.previewSummary": "{{files}}개 파일, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{total}}개 파일 중 {{selected}}개 선택됨",
|
||||
"agentManager.apply.selectAll": "모두 선택",
|
||||
"agentManager.apply.selectNone": "선택 해제",
|
||||
"agentManager.apply.moreFiles": "+{{count}}개 더",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}}개 더)",
|
||||
"agentManager.apply.checking": "확인 중...",
|
||||
"agentManager.apply.applying": "적용 중...",
|
||||
"agentManager.apply.success": "변경사항이 적용되었습니다",
|
||||
"agentManager.apply.conflict": "적용 시 충돌이 있습니다",
|
||||
"agentManager.apply.conflictToast":
|
||||
"{{files}}개 파일에서 {{count}}개 충돌이 발생했습니다. 적용에서 세부 정보를 확인하세요.",
|
||||
"agentManager.apply.error": "적용 실패",
|
||||
"agentManager.apply.conflictsTitle": "충돌",
|
||||
"agentManager.apply.unknownFile": "미해결 파일",
|
||||
"agentManager.apply.reason.index": "로컬 파일이 예상 버전과 다릅니다",
|
||||
"agentManager.apply.reason.patch": "패치를 깨끗하게 적용할 수 없습니다",
|
||||
"agentManager.apply.reason.contents": "현재 로컬 파일 내용을 읽을 수 없습니다",
|
||||
"agentManager.apply.reason.unknown": "충돌이 감지되었습니다",
|
||||
"agentManager.apply.inline.success": "적용됨",
|
||||
"agentManager.apply.inline.conflict": "충돌",
|
||||
"agentManager.apply.inline.error": "실패",
|
||||
"agentManager.shortcuts.toggleDiff": "차이점 패널 전환",
|
||||
"agentManager.shortcuts.category.quickSwitch": "빠른 전환",
|
||||
"agentManager.shortcuts.jumpToItem": "항목 1\u20139(으)로 이동",
|
||||
"agentManager.review.sendAllToChat": "모두 채팅으로 보내기",
|
||||
"agentManager.review.sendAllToChatWithCount": "모두 채팅으로 보내기 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "{{line}}줄에 댓글",
|
||||
"agentManager.review.editCommentOnLine": "{{line}}줄 댓글 편집",
|
||||
"agentManager.review.commentPlaceholder": "댓글을 남기세요...",
|
||||
"agentManager.review.commentAction": "댓글",
|
||||
"agentManager.review.sendToChat": "채팅으로 보내기",
|
||||
"agentManager.review.collapsedOnly": "{{count}}개 접힘",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}}개 접힘, {{large}}개 대용량",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "PR URL 붙여넣기...",
|
||||
"agentManager.import.open": "열기",
|
||||
"agentManager.import.branches": "브랜치",
|
||||
"agentManager.import.selectBranch": "브랜치 선택...",
|
||||
"agentManager.import.loading": "로딩 중...",
|
||||
"agentManager.import.loadingBranches": "브랜치 로딩 중...",
|
||||
"agentManager.import.noMatchingBranches": "일치하는 브랜치 없음",
|
||||
"agentManager.import.noBranchesFound": "브랜치를 찾을 수 없습니다.",
|
||||
"agentManager.import.noBranchesHint": "위에 PR URL을 붙여넣거나 새 Worktree를 만드세요.",
|
||||
"agentManager.import.failed": "가져오기 실패",
|
||||
|
||||
"question.summary": "{{total}}개 질문 중 {{n}}번째",
|
||||
"common.review": "검토",
|
||||
|
||||
@@ -951,146 +951,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "Ikke angitt (bruk serverstandard)",
|
||||
"dialog.model.notSet": "Ikke angitt",
|
||||
"profile.personalAccount": "Personlig konto",
|
||||
"agentManager.local": "lokal",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "ØKTER",
|
||||
"agentManager.notGitRepo": "Ikke et git-repositorium",
|
||||
"agentManager.worktree.settings": "Worktree-innstillinger",
|
||||
"agentManager.worktree.new": "Nytt Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree-oppsettskript",
|
||||
"agentManager.worktree.delete": "Slett Worktree",
|
||||
"agentManager.worktree.stale": "Utdatert",
|
||||
"agentManager.worktree.staleTooltip": "Mangler på disken eller spores ikke lenger av git worktree",
|
||||
"agentManager.worktree.removeStale": "Fjern utdatert Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Dobbeltklikk for å gi nytt navn",
|
||||
"agentManager.worktree.versions": "{{count}} versjoner",
|
||||
"agentManager.worktree.advancedOptions": "Avanserte Worktree-alternativer",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Base",
|
||||
"agentManager.hoverCard.sessions": "Økter",
|
||||
"agentManager.hoverCard.files": "Filer",
|
||||
"agentManager.hoverCard.changes": "Endringer",
|
||||
"agentManager.hoverCard.commits": "Commits",
|
||||
"agentManager.session.new": "Ny økt",
|
||||
"agentManager.session.untitled": "Uten tittel",
|
||||
"agentManager.session.newSession": "Ny økt",
|
||||
"agentManager.session.openInWorktree": "Åpne i Worktree",
|
||||
"agentManager.session.readonly": "Skrivebeskyttet økt",
|
||||
"agentManager.session.noSessions": "Ingen åpne økter",
|
||||
"agentManager.tab.close": "Lukk",
|
||||
"agentManager.tab.closeTab": "Lukk fane",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Åpne Terminal",
|
||||
"agentManager.setup.failed": "Oppsett av arbeidsområde mislyktes",
|
||||
"agentManager.setup.settingUp": "Setter opp arbeidsområde",
|
||||
"agentManager.shortcuts.title": "Tastatursnarveier",
|
||||
"agentManager.shortcuts.category.sidebar": "Sidepanel",
|
||||
"agentManager.shortcuts.category.tabs": "Faner",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Global",
|
||||
"agentManager.shortcuts.previousItem": "Forrige element",
|
||||
"agentManager.shortcuts.nextItem": "Neste element",
|
||||
"agentManager.shortcuts.newWorktree": "Nytt Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Avansert Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Slett Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Forrige fane",
|
||||
"agentManager.shortcuts.nextTab": "Neste fane",
|
||||
"agentManager.shortcuts.newTab": "Ny fane",
|
||||
"agentManager.shortcuts.closeTab": "Lukk fane",
|
||||
"agentManager.shortcuts.toggleTerminal": "Veksle terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokuser panel",
|
||||
"agentManager.shortcuts.openAgentManager": "Åpne Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Slett Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Slett Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Dette fjerner Worktree fra disken og kobler fra alle økter.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Avbryt",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Slett",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/no.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Fjern utdatert Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Fjern utdatert Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Dette fjerner bare koblingen i Agent Manager og lar filene på disken være urørt.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Avbryt",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Fjern utdatert Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Ny worktree",
|
||||
"agentManager.dialog.tab.new": "Ny",
|
||||
"agentManager.dialog.tab.import": "Importer",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree-navn (valgfritt)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Skriv en melding (⌘Enter for å sende)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Skriv en melding (Ctrl+Enter for å sende)",
|
||||
"agentManager.dialog.advancedOptions": "Avanserte alternativer",
|
||||
"agentManager.dialog.branchName": "Branch-navn",
|
||||
"agentManager.dialog.branchNamePlaceholder": "automatisk generert",
|
||||
"agentManager.dialog.baseBranch": "Base-branch",
|
||||
"agentManager.dialog.searchBranches": "Søk branches...",
|
||||
"agentManager.dialog.branchBadge.default": "standard",
|
||||
"agentManager.dialog.branchBadge.remote": "fjern",
|
||||
"agentManager.dialog.versions": "Versjoner",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktrees vil kjøre parallelt",
|
||||
"agentManager.dialog.compareModels": "Sammenlign modeller",
|
||||
"agentManager.dialog.compareModels.searchModels": "Søk modeller...",
|
||||
"agentManager.dialog.creating": "Oppretter...",
|
||||
"agentManager.dialog.createWorkspace": "Opprett worktree",
|
||||
"agentManager.dialog.removeImage": "Fjern bilde",
|
||||
"agentManager.dialog.advanced": "Avansert...",
|
||||
|
||||
"agentManager.diff.toggle": "Veksle diff",
|
||||
"agentManager.diff.openFile": "Åpne fil",
|
||||
"agentManager.apply.button": "Bruk lokalt",
|
||||
"agentManager.apply.globalButton": "Bruk",
|
||||
"agentManager.apply.tooltip": "Bruk valgte worktree-endringer på den lokale grenen",
|
||||
"agentManager.apply.dialogTitle": "Bruk endringer på den lokale grenen",
|
||||
"agentManager.apply.confirm": "Bruk nå",
|
||||
"agentManager.apply.retry": "Prøv å bruke på nytt",
|
||||
"agentManager.apply.previewTitle": "Bruke disse endringene på den lokale grenen?",
|
||||
"agentManager.apply.previewSummary": "{{files}} filer, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} av {{total}} filer valgt",
|
||||
"agentManager.apply.selectAll": "Velg alle",
|
||||
"agentManager.apply.selectNone": "Velg ingen",
|
||||
"agentManager.apply.moreFiles": "+{{count}} flere",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} flere)",
|
||||
"agentManager.apply.checking": "Sjekker...",
|
||||
"agentManager.apply.applying": "Bruker...",
|
||||
"agentManager.apply.success": "Endringer brukt",
|
||||
"agentManager.apply.conflict": "Bruk har konflikter",
|
||||
"agentManager.apply.conflictToast": "{{count}} konflikter i {{files}} filer. Se detaljer i Bruk.",
|
||||
"agentManager.apply.error": "Bruk mislyktes",
|
||||
"agentManager.apply.conflictsTitle": "Konflikter",
|
||||
"agentManager.apply.unknownFile": "Uløst fil",
|
||||
"agentManager.apply.reason.index": "Lokal fil skiller seg fra forventet versjon",
|
||||
"agentManager.apply.reason.patch": "Patch kan ikke brukes rent",
|
||||
"agentManager.apply.reason.contents": "Kan ikke lese innholdet i gjeldende lokal fil",
|
||||
"agentManager.apply.reason.unknown": "Konflikt oppdaget",
|
||||
"agentManager.apply.inline.success": "Brukt",
|
||||
"agentManager.apply.inline.conflict": "Konflikter",
|
||||
"agentManager.apply.inline.error": "Mislyktes",
|
||||
"agentManager.shortcuts.toggleDiff": "Veksle diff-panel",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Hurtigbytte",
|
||||
"agentManager.shortcuts.jumpToItem": "Hopp til element 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Send alt til chat",
|
||||
"agentManager.review.sendAllToChatWithCount": "Send alt til chat ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Kommenter på linje {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Rediger kommentar på linje {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Legg igjen en kommentar...",
|
||||
"agentManager.review.commentAction": "Kommenter",
|
||||
"agentManager.review.sendToChat": "Send til chat",
|
||||
"agentManager.review.collapsedOnly": "{{count}} kollapset",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} kollapset, {{large}} store",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Lim inn PR URL...",
|
||||
"agentManager.import.open": "Åpne",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "Velg branch...",
|
||||
"agentManager.import.loading": "Laster...",
|
||||
"agentManager.import.loadingBranches": "Laster branches...",
|
||||
"agentManager.import.noMatchingBranches": "Ingen matchende branches",
|
||||
"agentManager.import.noBranchesFound": "Ingen branches funnet.",
|
||||
"agentManager.import.noBranchesHint": "Lim inn en PR URL ovenfor eller opprett et nytt Worktree.",
|
||||
"agentManager.import.failed": "Import mislyktes",
|
||||
|
||||
"question.summary": "{{n}} av {{total}} spørsmål",
|
||||
"common.review": "Gjennomgå",
|
||||
|
||||
@@ -952,147 +952,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "Nie ustawiono (użyj domyślnego serwera)",
|
||||
"dialog.model.notSet": "Nie ustawiono",
|
||||
"profile.personalAccount": "Konto osobiste",
|
||||
"agentManager.local": "lokalne",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "SESJE",
|
||||
"agentManager.notGitRepo": "Nie jest repozytorium git",
|
||||
"agentManager.worktree.settings": "Ustawienia Worktree",
|
||||
"agentManager.worktree.new": "Nowy Worktree",
|
||||
"agentManager.worktree.setupScript": "Skrypt konfiguracji Worktree",
|
||||
"agentManager.worktree.delete": "Usuń Worktree",
|
||||
"agentManager.worktree.stale": "Nieaktualny",
|
||||
"agentManager.worktree.staleTooltip": "Brak na dysku lub nie jest już śledzony przez git worktree",
|
||||
"agentManager.worktree.removeStale": "Usuń nieaktualny Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Kliknij dwukrotnie, aby zmienić nazwę",
|
||||
"agentManager.worktree.versions": "{{count}} wersji",
|
||||
"agentManager.worktree.advancedOptions": "Zaawansowane opcje Worktree",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "Baza",
|
||||
"agentManager.hoverCard.sessions": "Sesje",
|
||||
"agentManager.hoverCard.files": "Pliki",
|
||||
"agentManager.hoverCard.changes": "Zmiany",
|
||||
"agentManager.hoverCard.commits": "Commity",
|
||||
"agentManager.session.new": "Nowa sesja",
|
||||
"agentManager.session.untitled": "Bez tytułu",
|
||||
"agentManager.session.newSession": "Nowa sesja",
|
||||
"agentManager.session.openInWorktree": "Otwórz w Worktree",
|
||||
"agentManager.session.readonly": "Sesja tylko do odczytu",
|
||||
"agentManager.session.noSessions": "Brak otwartych sesji",
|
||||
"agentManager.tab.close": "Zamknij",
|
||||
"agentManager.tab.closeTab": "Zamknij kartę",
|
||||
"agentManager.tab.terminal": "Terminal",
|
||||
"agentManager.tab.openTerminal": "Otwórz Terminal",
|
||||
"agentManager.setup.failed": "Konfiguracja workspace nie powiodła się",
|
||||
"agentManager.setup.settingUp": "Konfigurowanie workspace",
|
||||
"agentManager.shortcuts.title": "Skróty klawiszowe",
|
||||
"agentManager.shortcuts.category.sidebar": "Pasek boczny",
|
||||
"agentManager.shortcuts.category.tabs": "Karty",
|
||||
"agentManager.shortcuts.category.terminal": "Terminal",
|
||||
"agentManager.shortcuts.category.global": "Globalne",
|
||||
"agentManager.shortcuts.previousItem": "Poprzedni element",
|
||||
"agentManager.shortcuts.nextItem": "Następny element",
|
||||
"agentManager.shortcuts.newWorktree": "Nowy Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Zaawansowany Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Usuń Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Poprzednia karta",
|
||||
"agentManager.shortcuts.nextTab": "Następna karta",
|
||||
"agentManager.shortcuts.newTab": "Nowa karta",
|
||||
"agentManager.shortcuts.closeTab": "Zamknij kartę",
|
||||
"agentManager.shortcuts.toggleTerminal": "Przełącz terminal",
|
||||
"agentManager.shortcuts.focusPanel": "Fokus na panelu",
|
||||
"agentManager.shortcuts.openAgentManager": "Otwórz Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Usuń Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Usunąć Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? Spowoduje to usunięcie Worktree z dysku i odłączenie wszystkich sesji.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Anuluj",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Usuń",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/pl.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Usuń nieaktualny Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Usunąć nieaktualny Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? To usunie tylko mapowanie w Agent Manager i nie zmieni plików na dysku.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Anuluj",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Usuń nieaktualny Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Nowy Worktree",
|
||||
"agentManager.dialog.tab.new": "Nowy",
|
||||
"agentManager.dialog.tab.import": "Importuj",
|
||||
"agentManager.dialog.namePlaceholder": "Nazwa Worktree (opcjonalnie)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Wpisz wiadomość (⌘Enter aby wysłać)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Wpisz wiadomość (Ctrl+Enter aby wysłać)",
|
||||
"agentManager.dialog.advancedOptions": "Opcje zaawansowane",
|
||||
"agentManager.dialog.branchName": "Nazwa brancha",
|
||||
"agentManager.dialog.branchNamePlaceholder": "generowana automatycznie",
|
||||
"agentManager.dialog.baseBranch": "Branch bazowy",
|
||||
"agentManager.dialog.searchBranches": "Szukaj branchy...",
|
||||
"agentManager.dialog.branchBadge.default": "domyślny",
|
||||
"agentManager.dialog.branchBadge.remote": "zdalny",
|
||||
"agentManager.dialog.versions": "Wersje",
|
||||
"agentManager.dialog.versionHint": "{{count}} worktree będą działać równolegle",
|
||||
"agentManager.dialog.compareModels": "Porównaj modele",
|
||||
"agentManager.dialog.compareModels.searchModels": "Szukaj modeli...",
|
||||
"agentManager.dialog.creating": "Tworzenie...",
|
||||
"agentManager.dialog.createWorkspace": "Utwórz Worktree",
|
||||
"agentManager.dialog.removeImage": "Usuń obraz",
|
||||
"agentManager.dialog.advanced": "Zaawansowane...",
|
||||
|
||||
"agentManager.diff.toggle": "Przełącz diff",
|
||||
"agentManager.diff.openFile": "Otwórz plik",
|
||||
"agentManager.apply.button": "Zastosuj lokalnie",
|
||||
"agentManager.apply.globalButton": "Zastosuj",
|
||||
"agentManager.apply.tooltip": "Zastosuj wybrane zmiany worktree na lokalnej gałęzi",
|
||||
"agentManager.apply.dialogTitle": "Zastosuj zmiany na lokalnej gałęzi",
|
||||
"agentManager.apply.confirm": "Zastosuj teraz",
|
||||
"agentManager.apply.retry": "Ponów zastosowanie",
|
||||
"agentManager.apply.previewTitle": "Zastosować te zmiany na lokalnej gałęzi?",
|
||||
"agentManager.apply.previewSummary": "{{files}} plików, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} z {{total}} plików wybranych",
|
||||
"agentManager.apply.selectAll": "Zaznacz wszystkie",
|
||||
"agentManager.apply.selectNone": "Odznacz wszystkie",
|
||||
"agentManager.apply.moreFiles": "+{{count}} więcej",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} więcej)",
|
||||
"agentManager.apply.checking": "Sprawdzanie...",
|
||||
"agentManager.apply.applying": "Stosowanie...",
|
||||
"agentManager.apply.success": "Zmiany zastosowane",
|
||||
"agentManager.apply.conflict": "Zastosowanie zawiera konflikty",
|
||||
"agentManager.apply.conflictToast": "{{count}} konfliktów w {{files}} plikach. Sprawdź szczegóły w Zastosuj.",
|
||||
"agentManager.apply.error": "Zastosowanie nie powiodło się",
|
||||
"agentManager.apply.conflictsTitle": "Konflikty",
|
||||
"agentManager.apply.unknownFile": "Nierozwiązany plik",
|
||||
"agentManager.apply.reason.index": "Plik lokalny różni się od oczekiwanej wersji",
|
||||
"agentManager.apply.reason.patch": "Łatka nie może być zastosowana czysto",
|
||||
"agentManager.apply.reason.contents": "Nie można odczytać zawartości bieżącego pliku lokalnego",
|
||||
"agentManager.apply.reason.unknown": "Wykryto konflikt",
|
||||
"agentManager.apply.inline.success": "Zastosowano",
|
||||
"agentManager.apply.inline.conflict": "Konflikty",
|
||||
"agentManager.apply.inline.error": "Błąd",
|
||||
"agentManager.shortcuts.toggleDiff": "Przełącz panel diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Szybkie przełączanie",
|
||||
"agentManager.shortcuts.jumpToItem": "Przejdź do elementu 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Wyślij wszystko do czatu",
|
||||
"agentManager.review.sendAllToChatWithCount": "Wyślij wszystko do czatu ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Skomentuj linię {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Edytuj komentarz do linii {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Zostaw komentarz...",
|
||||
"agentManager.review.commentAction": "Komentuj",
|
||||
"agentManager.review.sendToChat": "Wyślij do czatu",
|
||||
"agentManager.review.collapsedOnly": "{{count}} zwiniętych",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} zwiniętych, {{large}} dużych",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Wklej URL PR...",
|
||||
"agentManager.import.open": "Otwórz",
|
||||
"agentManager.import.branches": "Branche",
|
||||
"agentManager.import.selectBranch": "Wybierz branch...",
|
||||
"agentManager.import.loading": "Ładowanie...",
|
||||
"agentManager.import.loadingBranches": "Ładowanie branchy...",
|
||||
"agentManager.import.noMatchingBranches": "Brak pasujących branchy",
|
||||
"agentManager.import.noBranchesFound": "Nie znaleziono branchy.",
|
||||
"agentManager.import.noBranchesHint": "Wklej URL PR powyżej lub utwórz nowy Worktree.",
|
||||
"agentManager.import.failed": "Import nie powiódł się",
|
||||
|
||||
"question.summary": "{{n}} z {{total}} pytań",
|
||||
"common.review": "Przejrzyj",
|
||||
|
||||
@@ -954,146 +954,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "Не задано (использовать значение сервера по умолчанию)",
|
||||
"dialog.model.notSet": "Не задано",
|
||||
"profile.personalAccount": "Личный аккаунт",
|
||||
"agentManager.local": "локальный",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "СЕССИИ",
|
||||
"agentManager.notGitRepo": "Не является git-репозиторием",
|
||||
"agentManager.worktree.settings": "Настройки Worktree",
|
||||
"agentManager.worktree.new": "Новый Worktree",
|
||||
"agentManager.worktree.setupScript": "Скрипт настройки Worktree",
|
||||
"agentManager.worktree.delete": "Удалить Worktree",
|
||||
"agentManager.worktree.stale": "Устаревший",
|
||||
"agentManager.worktree.staleTooltip": "Отсутствует на диске или больше не отслеживается git worktree",
|
||||
"agentManager.worktree.removeStale": "Удалить устаревший Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "Двойной клик для переименования",
|
||||
"agentManager.worktree.versions": "{{count}} версий",
|
||||
"agentManager.worktree.advancedOptions": "Расширенные настройки Worktree",
|
||||
"agentManager.hoverCard.branch": "ВЕТКА",
|
||||
"agentManager.hoverCard.base": "Основа",
|
||||
"agentManager.hoverCard.sessions": "Сессии",
|
||||
"agentManager.hoverCard.files": "Файлы",
|
||||
"agentManager.hoverCard.changes": "Изменения",
|
||||
"agentManager.hoverCard.commits": "Коммиты",
|
||||
"agentManager.session.new": "Новая сессия",
|
||||
"agentManager.session.untitled": "Без названия",
|
||||
"agentManager.session.newSession": "Новая сессия",
|
||||
"agentManager.session.openInWorktree": "Открыть в Worktree",
|
||||
"agentManager.session.readonly": "Сессия только для чтения",
|
||||
"agentManager.session.noSessions": "Нет открытых сессий",
|
||||
"agentManager.tab.close": "Закрыть",
|
||||
"agentManager.tab.closeTab": "Закрыть вкладку",
|
||||
"agentManager.tab.terminal": "Терминал",
|
||||
"agentManager.tab.openTerminal": "Открыть терминал",
|
||||
"agentManager.setup.failed": "Не удалось настроить рабочее пространство",
|
||||
"agentManager.setup.settingUp": "Настройка рабочего пространства",
|
||||
"agentManager.shortcuts.title": "Сочетания клавиш",
|
||||
"agentManager.shortcuts.category.sidebar": "Боковая панель",
|
||||
"agentManager.shortcuts.category.tabs": "Вкладки",
|
||||
"agentManager.shortcuts.category.terminal": "Терминал",
|
||||
"agentManager.shortcuts.category.global": "Глобальные",
|
||||
"agentManager.shortcuts.previousItem": "Предыдущий элемент",
|
||||
"agentManager.shortcuts.nextItem": "Следующий элемент",
|
||||
"agentManager.shortcuts.newWorktree": "Новый Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "Расширенный Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "Удалить Worktree",
|
||||
"agentManager.shortcuts.previousTab": "Предыдущая вкладка",
|
||||
"agentManager.shortcuts.nextTab": "Следующая вкладка",
|
||||
"agentManager.shortcuts.newTab": "Новая вкладка",
|
||||
"agentManager.shortcuts.closeTab": "Закрыть вкладку",
|
||||
"agentManager.shortcuts.toggleTerminal": "Переключить терминал",
|
||||
"agentManager.shortcuts.focusPanel": "Фокус на панели",
|
||||
"agentManager.shortcuts.openAgentManager": "Открыть Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "Удалить Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "Удалить Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "? Это удалит Worktree с диска и отключит все сессии.",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "Отмена",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "Удалить",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/ru.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "Удалить устаревший Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "Удалить устаревший Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? Это удалит только привязку в Agent Manager и не затронет файлы на диске.",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "Отмена",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "Удалить устаревший Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Новый worktree",
|
||||
"agentManager.dialog.tab.new": "Новый",
|
||||
"agentManager.dialog.tab.import": "Импорт",
|
||||
"agentManager.dialog.namePlaceholder": "Имя Worktree (необязательно)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "Введите сообщение (⌘Enter для отправки)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "Введите сообщение (Ctrl+Enter для отправки)",
|
||||
"agentManager.dialog.advancedOptions": "Расширенные параметры",
|
||||
"agentManager.dialog.branchName": "Имя ветки",
|
||||
"agentManager.dialog.branchNamePlaceholder": "генерируется автоматически",
|
||||
"agentManager.dialog.baseBranch": "Базовая ветка",
|
||||
"agentManager.dialog.searchBranches": "Поиск веток...",
|
||||
"agentManager.dialog.branchBadge.default": "по умолчанию",
|
||||
"agentManager.dialog.branchBadge.remote": "удалённая",
|
||||
"agentManager.dialog.versions": "Версии",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktree будут выполняться параллельно",
|
||||
"agentManager.dialog.compareModels": "Сравнить модели",
|
||||
"agentManager.dialog.compareModels.searchModels": "Поиск моделей...",
|
||||
"agentManager.dialog.creating": "Создание...",
|
||||
"agentManager.dialog.createWorkspace": "Создать worktree",
|
||||
"agentManager.dialog.removeImage": "Удалить изображение",
|
||||
"agentManager.dialog.advanced": "Дополнительно...",
|
||||
|
||||
"agentManager.diff.toggle": "Переключить diff",
|
||||
"agentManager.diff.openFile": "Открыть файл",
|
||||
"agentManager.apply.button": "Применить локально",
|
||||
"agentManager.apply.globalButton": "Применить",
|
||||
"agentManager.apply.tooltip": "Применить изменения выбранного рабочего дерева к локальной ветке",
|
||||
"agentManager.apply.dialogTitle": "Применить изменения к локальной ветке",
|
||||
"agentManager.apply.confirm": "Применить сейчас",
|
||||
"agentManager.apply.retry": "Повторить применение",
|
||||
"agentManager.apply.previewTitle": "Применить эти изменения к локальной ветке?",
|
||||
"agentManager.apply.previewSummary": "{{files}} файлов, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "{{selected}} из {{total}} файлов выбрано",
|
||||
"agentManager.apply.selectAll": "Выбрать все",
|
||||
"agentManager.apply.selectNone": "Снять выделение",
|
||||
"agentManager.apply.moreFiles": "+{{count}} ещё",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} ещё)",
|
||||
"agentManager.apply.checking": "Проверка...",
|
||||
"agentManager.apply.applying": "Применение...",
|
||||
"agentManager.apply.success": "Изменения применены",
|
||||
"agentManager.apply.conflict": "Применение содержит конфликты",
|
||||
"agentManager.apply.conflictToast": "{{count}} конфликтов в {{files}} файлах. Проверьте детали в Применить.",
|
||||
"agentManager.apply.error": "Применение не удалось",
|
||||
"agentManager.apply.conflictsTitle": "Конфликты",
|
||||
"agentManager.apply.unknownFile": "Неразрешённый файл",
|
||||
"agentManager.apply.reason.index": "Локальный файл отличается от ожидаемой версии",
|
||||
"agentManager.apply.reason.patch": "Патч не может быть применён чисто",
|
||||
"agentManager.apply.reason.contents": "Не удаётся прочитать содержимое текущего локального файла",
|
||||
"agentManager.apply.reason.unknown": "Обнаружен конфликт",
|
||||
"agentManager.apply.inline.success": "Применено",
|
||||
"agentManager.apply.inline.conflict": "Конфликты",
|
||||
"agentManager.apply.inline.error": "Ошибка",
|
||||
"agentManager.shortcuts.toggleDiff": "Переключить панель diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "Быстрое переключение",
|
||||
"agentManager.shortcuts.jumpToItem": "Перейти к элементу 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "Отправить всё в чат",
|
||||
"agentManager.review.sendAllToChatWithCount": "Отправить всё в чат ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "Комментарий к строке {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "Редактировать комментарий к строке {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "Оставьте комментарий...",
|
||||
"agentManager.review.commentAction": "Комментировать",
|
||||
"agentManager.review.sendToChat": "Отправить в чат",
|
||||
"agentManager.review.collapsedOnly": "{{count}} свернуто",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} свернуто, {{large}} больших",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "Вставьте URL PR...",
|
||||
"agentManager.import.open": "Открыть",
|
||||
"agentManager.import.branches": "Ветки",
|
||||
"agentManager.import.selectBranch": "Выберите ветку...",
|
||||
"agentManager.import.loading": "Загрузка...",
|
||||
"agentManager.import.loadingBranches": "Загрузка веток...",
|
||||
"agentManager.import.noMatchingBranches": "Нет подходящих веток",
|
||||
"agentManager.import.noBranchesFound": "Ветки не найдены.",
|
||||
"agentManager.import.noBranchesHint": "Вставьте URL PR выше или создайте новый Worktree.",
|
||||
"agentManager.import.failed": "Ошибка импорта",
|
||||
|
||||
"question.summary": "{{n}} из {{total}} вопросов",
|
||||
"common.review": "Просмотр",
|
||||
|
||||
@@ -938,147 +938,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "ไม่ได้ตั้งค่า (ใช้ค่าเริ่มต้นของเซิร์ฟเวอร์)",
|
||||
"dialog.model.notSet": "ไม่ได้ตั้งค่า",
|
||||
"profile.personalAccount": "บัญชีส่วนตัว",
|
||||
"agentManager.local": "ในเครื่อง",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "เซสชัน",
|
||||
"agentManager.notGitRepo": "ไม่ใช่ git repository",
|
||||
"agentManager.worktree.settings": "ตั้งค่า Worktree",
|
||||
"agentManager.worktree.new": "Worktree ใหม่",
|
||||
"agentManager.worktree.setupScript": "สคริปต์ตั้งค่า Worktree",
|
||||
"agentManager.worktree.delete": "ลบ Worktree",
|
||||
"agentManager.worktree.stale": "ล้าสมัย",
|
||||
"agentManager.worktree.staleTooltip": "ไม่พบบนดิสก์หรือไม่ได้ถูกติดตามโดย git worktree อีกต่อไป",
|
||||
"agentManager.worktree.removeStale": "ลบ Worktree ที่ล้าสมัย",
|
||||
"agentManager.worktree.doubleClickRename": "ดับเบิลคลิกเพื่อเปลี่ยนชื่อ",
|
||||
"agentManager.worktree.versions": "{{count}} เวอร์ชัน",
|
||||
"agentManager.worktree.advancedOptions": "ตัวเลือก Worktree ขั้นสูง",
|
||||
"agentManager.hoverCard.branch": "BRANCH",
|
||||
"agentManager.hoverCard.base": "ฐาน",
|
||||
"agentManager.hoverCard.sessions": "เซสชัน",
|
||||
"agentManager.hoverCard.files": "ไฟล์",
|
||||
"agentManager.hoverCard.changes": "การเปลี่ยนแปลง",
|
||||
"agentManager.hoverCard.commits": "คอมมิต",
|
||||
"agentManager.session.new": "เซสชันใหม่",
|
||||
"agentManager.session.untitled": "ไม่มีชื่อ",
|
||||
"agentManager.session.newSession": "เซสชันใหม่",
|
||||
"agentManager.session.openInWorktree": "เปิดใน Worktree",
|
||||
"agentManager.session.readonly": "เซสชันอ่านอย่างเดียว",
|
||||
"agentManager.session.noSessions": "ไม่มีเซสชันที่เปิดอยู่",
|
||||
"agentManager.tab.close": "ปิด",
|
||||
"agentManager.tab.closeTab": "ปิดแท็บ",
|
||||
"agentManager.tab.terminal": "เทอร์มินัล",
|
||||
"agentManager.tab.openTerminal": "เปิดเทอร์มินัล",
|
||||
"agentManager.setup.failed": "ตั้งค่า Workspace ล้มเหลว",
|
||||
"agentManager.setup.settingUp": "กำลังตั้งค่า Workspace",
|
||||
"agentManager.shortcuts.title": "ปุ่มลัดแป้นพิมพ์",
|
||||
"agentManager.shortcuts.category.sidebar": "แถบด้านข้าง",
|
||||
"agentManager.shortcuts.category.tabs": "แท็บ",
|
||||
"agentManager.shortcuts.category.terminal": "เทอร์มินัล",
|
||||
"agentManager.shortcuts.category.global": "ทั่วไป",
|
||||
"agentManager.shortcuts.previousItem": "รายการก่อนหน้า",
|
||||
"agentManager.shortcuts.nextItem": "รายการถัดไป",
|
||||
"agentManager.shortcuts.newWorktree": "Worktree ใหม่",
|
||||
"agentManager.shortcuts.advancedWorktree": "Worktree ขั้นสูง",
|
||||
"agentManager.shortcuts.deleteWorktree": "ลบ Worktree",
|
||||
"agentManager.shortcuts.previousTab": "แท็บก่อนหน้า",
|
||||
"agentManager.shortcuts.nextTab": "แท็บถัดไป",
|
||||
"agentManager.shortcuts.newTab": "แท็บใหม่",
|
||||
"agentManager.shortcuts.closeTab": "ปิดแท็บ",
|
||||
"agentManager.shortcuts.toggleTerminal": "สลับเทอร์มินัล",
|
||||
"agentManager.shortcuts.focusPanel": "โฟกัสแผง",
|
||||
"agentManager.shortcuts.openAgentManager": "เปิด Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "ลบ Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "ลบ Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost":
|
||||
"? การดำเนินการนี้จะลบ Worktree ออกจากดิสก์และยกเลิกการเชื่อมโยงเซสชันทั้งหมด",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "ยกเลิก",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "ลบ",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/th.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "ลบ Worktree ที่ล้าสมัย",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "ลบ Worktree ที่ล้าสมัย ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost":
|
||||
"? การดำเนินการนี้จะลบเฉพาะการแมปใน Agent Manager และจะไม่แตะไฟล์บนดิสก์",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "ยกเลิก",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "ลบ Worktree ที่ล้าสมัย",
|
||||
|
||||
"agentManager.dialog.openWorktree": "Worktree ใหม่",
|
||||
"agentManager.dialog.tab.new": "ใหม่",
|
||||
"agentManager.dialog.tab.import": "นำเข้า",
|
||||
"agentManager.dialog.namePlaceholder": "ชื่อ Worktree (ไม่บังคับ)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "พิมพ์ข้อความ (⌘Enter เพื่อส่ง)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "พิมพ์ข้อความ (Ctrl+Enter เพื่อส่ง)",
|
||||
"agentManager.dialog.advancedOptions": "ตัวเลือกขั้นสูง",
|
||||
"agentManager.dialog.branchName": "ชื่อ Branch",
|
||||
"agentManager.dialog.branchNamePlaceholder": "สร้างอัตโนมัติ",
|
||||
"agentManager.dialog.baseBranch": "Branch ฐาน",
|
||||
"agentManager.dialog.searchBranches": "ค้นหา Branch...",
|
||||
"agentManager.dialog.branchBadge.default": "ค่าเริ่มต้น",
|
||||
"agentManager.dialog.branchBadge.remote": "ระยะไกล",
|
||||
"agentManager.dialog.versions": "เวอร์ชัน",
|
||||
"agentManager.dialog.versionHint": "{{count}} Worktrees จะทำงานพร้อมกัน",
|
||||
"agentManager.dialog.compareModels": "เปรียบเทียบโมเดล",
|
||||
"agentManager.dialog.compareModels.searchModels": "ค้นหาโมเดล...",
|
||||
"agentManager.dialog.creating": "กำลังสร้าง...",
|
||||
"agentManager.dialog.createWorkspace": "สร้าง Worktree",
|
||||
"agentManager.dialog.removeImage": "ลบรูปภาพ",
|
||||
"agentManager.dialog.advanced": "ขั้นสูง...",
|
||||
|
||||
"agentManager.diff.toggle": "สลับ diff",
|
||||
"agentManager.diff.openFile": "เปิดไฟล์",
|
||||
"agentManager.apply.button": "นำไปใช้ในเครื่อง",
|
||||
"agentManager.apply.globalButton": "นำไปใช้",
|
||||
"agentManager.apply.tooltip": "นำการเปลี่ยนแปลงของ worktree ที่เลือกไปใช้กับสาขาในเครื่อง",
|
||||
"agentManager.apply.dialogTitle": "นำการเปลี่ยนแปลงไปใช้กับสาขาในเครื่อง",
|
||||
"agentManager.apply.confirm": "นำไปใช้ตอนนี้",
|
||||
"agentManager.apply.retry": "ลองนำไปใช้อีกครั้ง",
|
||||
"agentManager.apply.previewTitle": "นำการเปลี่ยนแปลงเหล่านี้ไปใช้กับสาขาในเครื่อง?",
|
||||
"agentManager.apply.previewSummary": "{{files}} ไฟล์, +{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "เลือก {{selected}} จาก {{total}} ไฟล์",
|
||||
"agentManager.apply.selectAll": "เลือกทั้งหมด",
|
||||
"agentManager.apply.selectNone": "ยกเลิกการเลือกทั้งหมด",
|
||||
"agentManager.apply.moreFiles": "+{{count}} เพิ่มเติม",
|
||||
"agentManager.apply.moreReasons": "{{reason}} (+{{count}} เพิ่มเติม)",
|
||||
"agentManager.apply.checking": "กำลังตรวจสอบ...",
|
||||
"agentManager.apply.applying": "กำลังนำไปใช้...",
|
||||
"agentManager.apply.success": "นำการเปลี่ยนแปลงไปใช้แล้ว",
|
||||
"agentManager.apply.conflict": "การนำไปใช้มีข้อขัดแย้ง",
|
||||
"agentManager.apply.conflictToast": "{{count}} ข้อขัดแย้งใน {{files}} ไฟล์ ตรวจสอบรายละเอียดในนำไปใช้",
|
||||
"agentManager.apply.error": "การนำไปใช้ล้มเหลว",
|
||||
"agentManager.apply.conflictsTitle": "ข้อขัดแย้ง",
|
||||
"agentManager.apply.unknownFile": "ไฟล์ที่ยังไม่ได้แก้ไข",
|
||||
"agentManager.apply.reason.index": "ไฟล์ในเครื่องแตกต่างจากเวอร์ชันที่คาดไว้",
|
||||
"agentManager.apply.reason.patch": "ไม่สามารถนำ patch ไปใช้ได้อย่างสะอาด",
|
||||
"agentManager.apply.reason.contents": "ไม่สามารถอ่านเนื้อหาของไฟล์ในเครื่องปัจจุบัน",
|
||||
"agentManager.apply.reason.unknown": "ตรวจพบข้อขัดแย้ง",
|
||||
"agentManager.apply.inline.success": "นำไปใช้แล้ว",
|
||||
"agentManager.apply.inline.conflict": "ข้อขัดแย้ง",
|
||||
"agentManager.apply.inline.error": "ล้มเหลว",
|
||||
"agentManager.shortcuts.toggleDiff": "สลับแผง diff",
|
||||
"agentManager.shortcuts.category.quickSwitch": "สลับด่วน",
|
||||
"agentManager.shortcuts.jumpToItem": "ข้ามไปยังรายการ 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "ส่งทั้งหมดไปยังแชท",
|
||||
"agentManager.review.sendAllToChatWithCount": "ส่งทั้งหมดไปยังแชท ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "แสดงความคิดเห็นที่บรรทัด {{line}}",
|
||||
"agentManager.review.editCommentOnLine": "แก้ไขความคิดเห็นที่บรรทัด {{line}}",
|
||||
"agentManager.review.commentPlaceholder": "แสดงความคิดเห็น...",
|
||||
"agentManager.review.commentAction": "แสดงความคิดเห็น",
|
||||
"agentManager.review.sendToChat": "ส่งไปยังแชท",
|
||||
"agentManager.review.collapsedOnly": "ยุบ {{count}} รายการ",
|
||||
"agentManager.review.collapsedWithLarge": "ยุบ {{collapsed}} รายการ, ขนาดใหญ่ {{large}} รายการ",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "วาง URL ของ PR...",
|
||||
"agentManager.import.open": "เปิด",
|
||||
"agentManager.import.branches": "Branches",
|
||||
"agentManager.import.selectBranch": "เลือก Branch...",
|
||||
"agentManager.import.loading": "กำลังโหลด...",
|
||||
"agentManager.import.loadingBranches": "กำลังโหลด Branches...",
|
||||
"agentManager.import.noMatchingBranches": "ไม่พบ Branch ที่ตรงกัน",
|
||||
"agentManager.import.noBranchesFound": "ไม่พบ Branch",
|
||||
"agentManager.import.noBranchesHint": "วาง URL ของ PR ด้านบนหรือสร้าง Worktree ใหม่",
|
||||
"agentManager.import.failed": "นำเข้าล้มเหลว",
|
||||
|
||||
"question.summary": "{{n}} จาก {{total}} คำถาม",
|
||||
"common.review": "ตรวจสอบ",
|
||||
|
||||
@@ -941,145 +941,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "未设置(使用服务器默认值)",
|
||||
"dialog.model.notSet": "未设置",
|
||||
"profile.personalAccount": "个人账户",
|
||||
"agentManager.local": "本地",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "会话",
|
||||
"agentManager.notGitRepo": "不是 git 仓库",
|
||||
"agentManager.worktree.settings": "Worktree 设置",
|
||||
"agentManager.worktree.new": "新建 Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree 设置脚本",
|
||||
"agentManager.worktree.delete": "删除 Worktree",
|
||||
"agentManager.worktree.stale": "已失效",
|
||||
"agentManager.worktree.staleTooltip": "在磁盘上缺失,或不再由 git worktree 跟踪",
|
||||
"agentManager.worktree.removeStale": "移除失效 Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "双击重命名",
|
||||
"agentManager.worktree.versions": "{{count}} 个版本",
|
||||
"agentManager.worktree.advancedOptions": "Worktree 高级选项",
|
||||
"agentManager.hoverCard.branch": "分支",
|
||||
"agentManager.hoverCard.base": "基础",
|
||||
"agentManager.hoverCard.sessions": "会话",
|
||||
"agentManager.hoverCard.files": "文件",
|
||||
"agentManager.hoverCard.changes": "更改",
|
||||
"agentManager.hoverCard.commits": "提交",
|
||||
"agentManager.session.new": "新建会话",
|
||||
"agentManager.session.untitled": "无标题",
|
||||
"agentManager.session.newSession": "新建会话",
|
||||
"agentManager.session.openInWorktree": "在 Worktree 中打开",
|
||||
"agentManager.session.readonly": "只读会话",
|
||||
"agentManager.session.noSessions": "没有打开的会话",
|
||||
"agentManager.tab.close": "关闭",
|
||||
"agentManager.tab.closeTab": "关闭标签页",
|
||||
"agentManager.tab.terminal": "终端",
|
||||
"agentManager.tab.openTerminal": "打开终端",
|
||||
"agentManager.setup.failed": "工作区设置失败",
|
||||
"agentManager.setup.settingUp": "正在设置工作区",
|
||||
"agentManager.shortcuts.title": "键盘快捷键",
|
||||
"agentManager.shortcuts.category.sidebar": "侧边栏",
|
||||
"agentManager.shortcuts.category.tabs": "标签页",
|
||||
"agentManager.shortcuts.category.terminal": "终端",
|
||||
"agentManager.shortcuts.category.global": "全局",
|
||||
"agentManager.shortcuts.previousItem": "上一项",
|
||||
"agentManager.shortcuts.nextItem": "下一项",
|
||||
"agentManager.shortcuts.newWorktree": "新建 Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "高级 Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "删除 Worktree",
|
||||
"agentManager.shortcuts.previousTab": "上一个标签页",
|
||||
"agentManager.shortcuts.nextTab": "下一个标签页",
|
||||
"agentManager.shortcuts.newTab": "新建标签页",
|
||||
"agentManager.shortcuts.closeTab": "关闭标签页",
|
||||
"agentManager.shortcuts.toggleTerminal": "切换终端",
|
||||
"agentManager.shortcuts.focusPanel": "聚焦面板",
|
||||
"agentManager.shortcuts.openAgentManager": "打开 Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "删除 Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "删除 Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "?这将从磁盘中移除 Worktree 并取消所有会话的关联。",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "取消",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "删除",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/zh.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "移除失效 Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "移除失效 Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost": "?这只会移除 Agent Manager 映射,不会触碰磁盘上的文件。",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "取消",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "移除失效 Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "新建工作树",
|
||||
"agentManager.dialog.tab.new": "新建",
|
||||
"agentManager.dialog.tab.import": "导入",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree 名称(可选)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "输入消息(⌘Enter 发送)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "输入消息(Ctrl+Enter 发送)",
|
||||
"agentManager.dialog.advancedOptions": "高级选项",
|
||||
"agentManager.dialog.branchName": "分支名称",
|
||||
"agentManager.dialog.branchNamePlaceholder": "自动生成",
|
||||
"agentManager.dialog.baseBranch": "基础分支",
|
||||
"agentManager.dialog.searchBranches": "搜索分支...",
|
||||
"agentManager.dialog.branchBadge.default": "默认",
|
||||
"agentManager.dialog.branchBadge.remote": "远程",
|
||||
"agentManager.dialog.versions": "版本",
|
||||
"agentManager.dialog.versionHint": "{{count}} 个 Worktree 将并行运行",
|
||||
"agentManager.dialog.compareModels": "比较模型",
|
||||
"agentManager.dialog.compareModels.searchModels": "搜索模型...",
|
||||
"agentManager.dialog.creating": "创建中...",
|
||||
"agentManager.dialog.createWorkspace": "创建工作树",
|
||||
"agentManager.dialog.removeImage": "移除图片",
|
||||
"agentManager.dialog.advanced": "高级...",
|
||||
|
||||
"agentManager.diff.toggle": "切换差异",
|
||||
"agentManager.diff.openFile": "打开文件",
|
||||
"agentManager.apply.button": "应用到本地",
|
||||
"agentManager.apply.globalButton": "应用",
|
||||
"agentManager.apply.tooltip": "将所选工作树的更改应用到本地分支",
|
||||
"agentManager.apply.dialogTitle": "将更改应用到本地分支",
|
||||
"agentManager.apply.confirm": "立即应用",
|
||||
"agentManager.apply.retry": "重试应用",
|
||||
"agentManager.apply.previewTitle": "将这些更改应用到本地分支?",
|
||||
"agentManager.apply.previewSummary": "{{files}} 个文件,+{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "已选择 {{selected}}/{{total}} 个文件",
|
||||
"agentManager.apply.selectAll": "全选",
|
||||
"agentManager.apply.selectNone": "取消全选",
|
||||
"agentManager.apply.moreFiles": "+{{count}} 更多",
|
||||
"agentManager.apply.moreReasons": "{{reason}}(+{{count}} 更多)",
|
||||
"agentManager.apply.checking": "检查中...",
|
||||
"agentManager.apply.applying": "应用中...",
|
||||
"agentManager.apply.success": "更改已应用",
|
||||
"agentManager.apply.conflict": "应用存在冲突",
|
||||
"agentManager.apply.conflictToast": "{{files}} 个文件中有 {{count}} 个冲突。在应用中查看详情。",
|
||||
"agentManager.apply.error": "应用失败",
|
||||
"agentManager.apply.conflictsTitle": "冲突",
|
||||
"agentManager.apply.unknownFile": "未解决的文件",
|
||||
"agentManager.apply.reason.index": "本地文件与预期版本不同",
|
||||
"agentManager.apply.reason.patch": "补丁无法干净地应用",
|
||||
"agentManager.apply.reason.contents": "无法读取当前本地文件内容",
|
||||
"agentManager.apply.reason.unknown": "检测到冲突",
|
||||
"agentManager.apply.inline.success": "已应用",
|
||||
"agentManager.apply.inline.conflict": "冲突",
|
||||
"agentManager.apply.inline.error": "失败",
|
||||
"agentManager.shortcuts.toggleDiff": "切换差异面板",
|
||||
"agentManager.shortcuts.category.quickSwitch": "快速切换",
|
||||
"agentManager.shortcuts.jumpToItem": "跳转到项目 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "全部发送到聊天",
|
||||
"agentManager.review.sendAllToChatWithCount": "全部发送到聊天 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "在第 {{line}} 行评论",
|
||||
"agentManager.review.editCommentOnLine": "编辑第 {{line}} 行评论",
|
||||
"agentManager.review.commentPlaceholder": "留下评论...",
|
||||
"agentManager.review.commentAction": "评论",
|
||||
"agentManager.review.sendToChat": "发送到聊天",
|
||||
"agentManager.review.collapsedOnly": "{{count}} 个已折叠",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} 个已折叠,{{large}} 个过大",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "粘贴 PR URL...",
|
||||
"agentManager.import.open": "打开",
|
||||
"agentManager.import.branches": "分支",
|
||||
"agentManager.import.selectBranch": "选择分支...",
|
||||
"agentManager.import.loading": "加载中...",
|
||||
"agentManager.import.loadingBranches": "正在加载分支...",
|
||||
"agentManager.import.noMatchingBranches": "没有匹配的分支",
|
||||
"agentManager.import.noBranchesFound": "未找到分支。",
|
||||
"agentManager.import.noBranchesHint": "在上方粘贴 PR URL 或创建新的 Worktree。",
|
||||
"agentManager.import.failed": "导入失败",
|
||||
|
||||
"question.summary": "第 {{n}} / {{total}} 个问题",
|
||||
"common.review": "审查",
|
||||
|
||||
@@ -966,145 +966,8 @@ export const dict = {
|
||||
"settings.providers.notSet": "未設定(使用伺服器預設值)",
|
||||
"dialog.model.notSet": "未設定",
|
||||
"profile.personalAccount": "個人帳戶",
|
||||
"agentManager.local": "本機",
|
||||
"agentManager.section.worktrees": "WORKTREES",
|
||||
"agentManager.section.sessions": "工作階段",
|
||||
"agentManager.notGitRepo": "不是 git 儲存庫",
|
||||
"agentManager.worktree.settings": "Worktree 設定",
|
||||
"agentManager.worktree.new": "新建 Worktree",
|
||||
"agentManager.worktree.setupScript": "Worktree 設定指令碼",
|
||||
"agentManager.worktree.delete": "刪除 Worktree",
|
||||
"agentManager.worktree.stale": "已失效",
|
||||
"agentManager.worktree.staleTooltip": "磁碟上不存在,或不再由 git worktree 追蹤",
|
||||
"agentManager.worktree.removeStale": "移除失效 Worktree",
|
||||
"agentManager.worktree.doubleClickRename": "按兩下以重新命名",
|
||||
"agentManager.worktree.versions": "{{count}} 個版本",
|
||||
"agentManager.worktree.advancedOptions": "Worktree 進階選項",
|
||||
"agentManager.hoverCard.branch": "分支",
|
||||
"agentManager.hoverCard.base": "基底",
|
||||
"agentManager.hoverCard.sessions": "工作階段",
|
||||
"agentManager.hoverCard.files": "檔案",
|
||||
"agentManager.hoverCard.changes": "變更",
|
||||
"agentManager.hoverCard.commits": "提交",
|
||||
"agentManager.session.new": "新建工作階段",
|
||||
"agentManager.session.untitled": "未命名",
|
||||
"agentManager.session.newSession": "新建工作階段",
|
||||
"agentManager.session.openInWorktree": "在 Worktree 中開啟",
|
||||
"agentManager.session.readonly": "唯讀工作階段",
|
||||
"agentManager.session.noSessions": "沒有開啟的工作階段",
|
||||
"agentManager.tab.close": "關閉",
|
||||
"agentManager.tab.closeTab": "關閉分頁",
|
||||
"agentManager.tab.terminal": "終端機",
|
||||
"agentManager.tab.openTerminal": "開啟終端機",
|
||||
"agentManager.setup.failed": "工作區設定失敗",
|
||||
"agentManager.setup.settingUp": "正在設定工作區",
|
||||
"agentManager.shortcuts.title": "鍵盤快捷鍵",
|
||||
"agentManager.shortcuts.category.sidebar": "側邊欄",
|
||||
"agentManager.shortcuts.category.tabs": "分頁",
|
||||
"agentManager.shortcuts.category.terminal": "終端機",
|
||||
"agentManager.shortcuts.category.global": "全域",
|
||||
"agentManager.shortcuts.previousItem": "上一個項目",
|
||||
"agentManager.shortcuts.nextItem": "下一個項目",
|
||||
"agentManager.shortcuts.newWorktree": "新建 Worktree",
|
||||
"agentManager.shortcuts.advancedWorktree": "進階 Worktree",
|
||||
"agentManager.shortcuts.deleteWorktree": "刪除 Worktree",
|
||||
"agentManager.shortcuts.previousTab": "上一個分頁",
|
||||
"agentManager.shortcuts.nextTab": "下一個分頁",
|
||||
"agentManager.shortcuts.newTab": "新建分頁",
|
||||
"agentManager.shortcuts.closeTab": "關閉分頁",
|
||||
"agentManager.shortcuts.toggleTerminal": "切換終端機",
|
||||
"agentManager.shortcuts.focusPanel": "聚焦面板",
|
||||
"agentManager.shortcuts.openAgentManager": "開啟 Agent Manager",
|
||||
"agentManager.dialog.deleteWorktree.title": "刪除 Worktree",
|
||||
"agentManager.dialog.deleteWorktree.messagePre": "刪除 Worktree ",
|
||||
"agentManager.dialog.deleteWorktree.messagePost": "?這將從磁碟中移除 Worktree 並取消所有工作階段的關聯。",
|
||||
"agentManager.dialog.deleteWorktree.cancel": "取消",
|
||||
"agentManager.dialog.deleteWorktree.confirm": "刪除",
|
||||
// Agent Manager strings live in webview-ui/agent-manager/i18n/zht.ts
|
||||
|
||||
"agentManager.dialog.removeStaleWorktree.title": "移除失效 Worktree",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePre": "移除失效 Worktree ",
|
||||
"agentManager.dialog.removeStaleWorktree.messagePost": "?這只會移除 Agent Manager 對應,不會變更磁碟上的檔案。",
|
||||
"agentManager.dialog.removeStaleWorktree.cancel": "取消",
|
||||
"agentManager.dialog.removeStaleWorktree.confirm": "移除失效 Worktree",
|
||||
|
||||
"agentManager.dialog.openWorktree": "新建工作樹",
|
||||
"agentManager.dialog.tab.new": "新建",
|
||||
"agentManager.dialog.tab.import": "匯入",
|
||||
"agentManager.dialog.namePlaceholder": "Worktree 名稱(選填)",
|
||||
"agentManager.dialog.promptPlaceholder.mac": "輸入訊息(⌘Enter 傳送)",
|
||||
"agentManager.dialog.promptPlaceholder.other": "輸入訊息(Ctrl+Enter 傳送)",
|
||||
"agentManager.dialog.advancedOptions": "進階選項",
|
||||
"agentManager.dialog.branchName": "分支名稱",
|
||||
"agentManager.dialog.branchNamePlaceholder": "自動產生",
|
||||
"agentManager.dialog.baseBranch": "基底分支",
|
||||
"agentManager.dialog.searchBranches": "搜尋分支...",
|
||||
"agentManager.dialog.branchBadge.default": "預設",
|
||||
"agentManager.dialog.branchBadge.remote": "遠端",
|
||||
"agentManager.dialog.versions": "版本",
|
||||
"agentManager.dialog.versionHint": "{{count}} 個 Worktree 將並行執行",
|
||||
"agentManager.dialog.compareModels": "比較模型",
|
||||
"agentManager.dialog.compareModels.searchModels": "搜尋模型...",
|
||||
"agentManager.dialog.creating": "建立中...",
|
||||
"agentManager.dialog.createWorkspace": "建立工作樹",
|
||||
"agentManager.dialog.removeImage": "移除圖片",
|
||||
"agentManager.dialog.advanced": "進階...",
|
||||
|
||||
"agentManager.diff.toggle": "切換差異",
|
||||
"agentManager.diff.openFile": "開啟檔案",
|
||||
"agentManager.apply.button": "套用到本地",
|
||||
"agentManager.apply.globalButton": "套用",
|
||||
"agentManager.apply.tooltip": "將所選工作樹的變更套用到本地分支",
|
||||
"agentManager.apply.dialogTitle": "將變更套用到本地分支",
|
||||
"agentManager.apply.confirm": "立即套用",
|
||||
"agentManager.apply.retry": "重試套用",
|
||||
"agentManager.apply.previewTitle": "將這些變更套用到本地分支?",
|
||||
"agentManager.apply.previewSummary": "{{files}} 個檔案,+{{additions}} -{{deletions}}",
|
||||
"agentManager.apply.selectionSummary": "已選取 {{selected}}/{{total}} 個檔案",
|
||||
"agentManager.apply.selectAll": "全選",
|
||||
"agentManager.apply.selectNone": "取消全選",
|
||||
"agentManager.apply.moreFiles": "+{{count}} 更多",
|
||||
"agentManager.apply.moreReasons": "{{reason}}(+{{count}} 更多)",
|
||||
"agentManager.apply.checking": "檢查中...",
|
||||
"agentManager.apply.applying": "套用中...",
|
||||
"agentManager.apply.success": "變更已套用",
|
||||
"agentManager.apply.conflict": "套用存在衝突",
|
||||
"agentManager.apply.conflictToast": "{{files}} 個檔案中有 {{count}} 個衝突。在套用中查看詳情。",
|
||||
"agentManager.apply.error": "套用失敗",
|
||||
"agentManager.apply.conflictsTitle": "衝突",
|
||||
"agentManager.apply.unknownFile": "未解決的檔案",
|
||||
"agentManager.apply.reason.index": "本地檔案與預期版本不同",
|
||||
"agentManager.apply.reason.patch": "修補程式無法乾淨地套用",
|
||||
"agentManager.apply.reason.contents": "無法讀取目前本地檔案內容",
|
||||
"agentManager.apply.reason.unknown": "偵測到衝突",
|
||||
"agentManager.apply.inline.success": "已套用",
|
||||
"agentManager.apply.inline.conflict": "衝突",
|
||||
"agentManager.apply.inline.error": "失敗",
|
||||
"agentManager.shortcuts.toggleDiff": "切換差異面板",
|
||||
"agentManager.shortcuts.category.quickSwitch": "快速切換",
|
||||
"agentManager.shortcuts.jumpToItem": "跳至項目 1\u20139",
|
||||
"agentManager.review.sendAllToChat": "全部傳送到聊天",
|
||||
"agentManager.review.sendAllToChatWithCount": "全部傳送到聊天 ({{count}})",
|
||||
"agentManager.review.sendAllShortcut.mac": "⌘Enter",
|
||||
"agentManager.review.sendAllShortcut.other": "Ctrl+Enter",
|
||||
"agentManager.review.commentOnLine": "在第 {{line}} 行留言",
|
||||
"agentManager.review.editCommentOnLine": "編輯第 {{line}} 行留言",
|
||||
"agentManager.review.commentPlaceholder": "留下留言...",
|
||||
"agentManager.review.commentAction": "留言",
|
||||
"agentManager.review.sendToChat": "傳送到聊天",
|
||||
"agentManager.review.collapsedOnly": "{{count}} 個已摺疊",
|
||||
"agentManager.review.collapsedWithLarge": "{{collapsed}} 個已摺疊,{{large}} 個過大",
|
||||
|
||||
"agentManager.import.pullRequest": "Pull Request",
|
||||
"agentManager.import.pastePrUrl": "貼上 PR URL...",
|
||||
"agentManager.import.open": "開啟",
|
||||
"agentManager.import.branches": "分支",
|
||||
"agentManager.import.selectBranch": "選擇分支...",
|
||||
"agentManager.import.loading": "載入中...",
|
||||
"agentManager.import.loadingBranches": "正在載入分支...",
|
||||
"agentManager.import.noMatchingBranches": "沒有符合的分支",
|
||||
"agentManager.import.noBranchesFound": "找不到分支。",
|
||||
"agentManager.import.noBranchesHint": "在上方貼上 PR URL 或建立新的 Worktree。",
|
||||
"agentManager.import.failed": "匯入失敗",
|
||||
|
||||
"question.summary": "第 {{n}} / {{total}} 個問題",
|
||||
"common.review": "審查",
|
||||
|
||||
@@ -0,0 +1,165 @@
|
||||
/** @jsxImportSource solid-js */
|
||||
/**
|
||||
* StoryProviders — wraps composite stories with all required contexts.
|
||||
*
|
||||
* Instead of instantiating the full VSCodeProvider → ServerProvider → SessionProvider
|
||||
* chain (which requires a real extension host / SSE connection), we provide mock
|
||||
* context values directly.
|
||||
*/
|
||||
|
||||
import { createSignal, type ParentComponent } from "solid-js"
|
||||
import { DataProvider } from "@kilocode/kilo-ui/context/data"
|
||||
import { DiffComponentProvider } from "@kilocode/kilo-ui/context/diff"
|
||||
import { CodeComponentProvider } from "@kilocode/kilo-ui/context/code"
|
||||
import { DialogProvider } from "@kilocode/kilo-ui/context/dialog"
|
||||
import { MarkedProvider } from "@kilocode/kilo-ui/context/marked"
|
||||
import { I18nProvider } from "@kilocode/kilo-ui/context"
|
||||
import { Diff } from "@kilocode/kilo-ui/diff"
|
||||
import { Code } from "@kilocode/kilo-ui/code"
|
||||
import { SessionContext } from "../context/session"
|
||||
import { LanguageContext } from "../context/language"
|
||||
import { dict as uiEn } from "@kilocode/kilo-ui/i18n/en"
|
||||
import { dict as appEn } from "../i18n/en"
|
||||
import { dict as kiloEn } from "@kilocode/kilo-i18n/en"
|
||||
import type { PermissionRequest, QuestionRequest } from "../types/messages"
|
||||
|
||||
// Merged English dictionary (same merge order as the real LanguageProvider)
|
||||
const dict: Record<string, string> = { ...appEn, ...uiEn, ...kiloEn }
|
||||
|
||||
function t(key: string) {
|
||||
return dict[key] ?? key
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Default mock data (empty session)
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const defaultMockData = {
|
||||
session: [],
|
||||
session_status: {},
|
||||
session_diff: {},
|
||||
message: {} as Record<string, any[]>,
|
||||
part: {} as Record<string, any[]>,
|
||||
permission: {} as Record<string, any[]>,
|
||||
question: {},
|
||||
provider: { all: [], connected: false, default: {} },
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Mock SessionContext value — only the subset used by components
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
function noop() {}
|
||||
|
||||
export function mockSessionValue(overrides?: {
|
||||
id?: string
|
||||
permissions?: PermissionRequest[]
|
||||
questions?: QuestionRequest[]
|
||||
status?: string
|
||||
}) {
|
||||
const id = overrides?.id ?? "story-session-001"
|
||||
const permissions = overrides?.permissions ?? []
|
||||
const qs = overrides?.questions ?? []
|
||||
const status = (overrides?.status ?? "idle") as "idle" | "busy"
|
||||
|
||||
return {
|
||||
currentSessionID: () => id,
|
||||
currentSession: () => ({ id, title: "Story session", createdAt: new Date().toISOString(), updatedAt: new Date().toISOString() }),
|
||||
setCurrentSessionID: noop,
|
||||
sessions: () => [],
|
||||
status: () => status,
|
||||
statusInfo: () => ({ type: status }),
|
||||
statusText: () => (status === "idle" ? undefined : "Thinking…"),
|
||||
busySince: () => (status === "busy" ? Date.now() - 2000 : undefined),
|
||||
loading: () => false,
|
||||
messages: () => [],
|
||||
userMessages: () => [],
|
||||
allMessages: () => ({}),
|
||||
allParts: () => ({}),
|
||||
allStatusMap: () => ({}),
|
||||
getParts: () => [],
|
||||
todos: () => [],
|
||||
permissions: () => permissions,
|
||||
questions: () => qs,
|
||||
questionErrors: () => new Set<string>(),
|
||||
selected: () => ({ providerID: "anthropic", modelID: "claude-sonnet-4-20250514" }),
|
||||
selectModel: noop,
|
||||
totalCost: () => 0,
|
||||
contextUsage: () => undefined,
|
||||
agents: () => [{ name: "code", description: "Code mode", mode: "primary" as const }],
|
||||
selectedAgent: () => "code",
|
||||
selectAgent: noop,
|
||||
getSessionAgent: () => "code",
|
||||
getSessionModel: () => ({ providerID: "anthropic", modelID: "claude-sonnet-4-20250514" }),
|
||||
setSessionModel: noop,
|
||||
setSessionAgent: noop,
|
||||
variantList: () => [],
|
||||
currentVariant: () => undefined,
|
||||
selectVariant: noop,
|
||||
sendMessage: noop,
|
||||
abort: noop,
|
||||
compact: noop,
|
||||
respondToPermission: noop,
|
||||
replyToQuestion: noop,
|
||||
rejectQuestion: noop,
|
||||
createSession: noop,
|
||||
clearCurrentSession: noop,
|
||||
loadSessions: noop,
|
||||
selectSession: noop,
|
||||
deleteSession: noop,
|
||||
renameSession: noop,
|
||||
syncSession: noop,
|
||||
cloudPreviewId: () => null,
|
||||
selectCloudSession: noop,
|
||||
}
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// StoryProviders component
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
interface StoryProvidersProps {
|
||||
data?: any
|
||||
permissions?: PermissionRequest[]
|
||||
questions?: QuestionRequest[]
|
||||
status?: string
|
||||
sessionID?: string
|
||||
}
|
||||
|
||||
export const StoryProviders: ParentComponent<StoryProvidersProps> = (props) => {
|
||||
const data = () => props.data ?? defaultMockData
|
||||
const session = mockSessionValue({
|
||||
id: props.sessionID,
|
||||
permissions: props.permissions,
|
||||
questions: props.questions,
|
||||
status: props.status,
|
||||
})
|
||||
const [locale] = createSignal<"en">("en")
|
||||
|
||||
return (
|
||||
<DialogProvider>
|
||||
<LanguageContext.Provider
|
||||
value={{
|
||||
locale,
|
||||
setLocale: noop,
|
||||
userOverride: () => "" as any,
|
||||
t,
|
||||
}}
|
||||
>
|
||||
<I18nProvider value={{ locale: () => "en", t }}>
|
||||
<SessionContext.Provider value={session as any}>
|
||||
<DataProvider data={data()} directory="/project/">
|
||||
<DiffComponentProvider component={Diff}>
|
||||
<CodeComponentProvider component={Code}>
|
||||
<MarkedProvider>
|
||||
<div style={{ padding: "12px" }}>{props.children}</div>
|
||||
</MarkedProvider>
|
||||
</CodeComponentProvider>
|
||||
</DiffComponentProvider>
|
||||
</DataProvider>
|
||||
</SessionContext.Provider>
|
||||
</I18nProvider>
|
||||
</LanguageContext.Provider>
|
||||
</DialogProvider>
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,463 @@
|
||||
/** @jsxImportSource solid-js */
|
||||
/**
|
||||
* Composite visual regression stories for the kilo-vscode webview.
|
||||
*
|
||||
* These test the *composed* UI — how kilo-ui components look together
|
||||
* in the extension webview context with extension-specific styling,
|
||||
* inline permission prompts, and tool card overrides.
|
||||
*/
|
||||
|
||||
import type { Meta, StoryObj } from "storybook-solidjs-vite"
|
||||
import { For, Show } from "solid-js"
|
||||
import { Part } from "@kilocode/kilo-ui/message-part"
|
||||
import { BasicTool } from "@kilocode/kilo-ui/basic-tool"
|
||||
import { Button } from "@kilocode/kilo-ui/button"
|
||||
import type {
|
||||
AssistantMessage as SDKAssistantMessage,
|
||||
TextPart,
|
||||
ToolPart,
|
||||
Message as SDKMessage,
|
||||
} from "@kilocode/sdk/v2"
|
||||
import { StoryProviders, defaultMockData, mockSessionValue } from "./StoryProviders"
|
||||
import { AssistantMessage } from "../components/chat/AssistantMessage"
|
||||
import { registerVscodeToolOverrides } from "../components/chat/VscodeToolOverrides"
|
||||
import { SessionContext } from "../context/session"
|
||||
import type { PermissionRequest, QuestionRequest } from "../types/messages"
|
||||
|
||||
// Register VS Code tool overrides (bash expanded by default, etc.)
|
||||
registerVscodeToolOverrides()
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Shared constants
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
const SESSION_ID = "story-session-001"
|
||||
const ASST_MSG_ID = "asst-msg-001"
|
||||
const now = Date.now()
|
||||
|
||||
const baseAssistantMessage: SDKAssistantMessage = {
|
||||
id: ASST_MSG_ID,
|
||||
sessionID: SESSION_ID,
|
||||
role: "assistant",
|
||||
parentID: "user-msg-001",
|
||||
time: { created: now - 9000, completed: now - 5000 },
|
||||
modelID: "claude-sonnet-4-20250514",
|
||||
providerID: "anthropic",
|
||||
mode: "default",
|
||||
agent: "default",
|
||||
path: { cwd: "/project", root: "/project" },
|
||||
cost: 0.0023,
|
||||
tokens: { total: 512, input: 256, output: 256, reasoning: 0, cache: { read: 0, write: 0 } },
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Tool parts
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
const globPending: ToolPart = {
|
||||
id: "part-glob-001",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "tool",
|
||||
callID: "call-glob-001",
|
||||
tool: "glob",
|
||||
state: {
|
||||
status: "pending",
|
||||
input: { pattern: "**/*.md", path: "." },
|
||||
title: "Searching for files",
|
||||
metadata: {},
|
||||
time: { start: now - 3000 },
|
||||
},
|
||||
}
|
||||
|
||||
const readCompleted: ToolPart = {
|
||||
id: "part-read-001",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "tool",
|
||||
callID: "call-read-001",
|
||||
tool: "read",
|
||||
state: {
|
||||
status: "completed",
|
||||
input: { filePath: "src/main.tsx" },
|
||||
output: 'import { render } from "solid-js/web"\nrender(() => <App />, document.getElementById("root")!)',
|
||||
title: "Read file",
|
||||
metadata: {},
|
||||
time: { start: now - 8000, end: now - 7500 },
|
||||
},
|
||||
}
|
||||
|
||||
const grepCompleted: ToolPart = {
|
||||
id: "part-grep-001",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "tool",
|
||||
callID: "call-grep-001",
|
||||
tool: "grep",
|
||||
state: {
|
||||
status: "completed",
|
||||
input: { pattern: "TODO", path: "src/" },
|
||||
output: "src/main.tsx:12: // TODO: add error boundary\nsrc/utils.ts:5: // TODO: refactor",
|
||||
title: "Search",
|
||||
metadata: {},
|
||||
time: { start: now - 7000, end: now - 6500 },
|
||||
},
|
||||
}
|
||||
|
||||
const globCompleted: ToolPart = {
|
||||
id: "part-glob-002",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "tool",
|
||||
callID: "call-glob-002",
|
||||
tool: "glob",
|
||||
state: {
|
||||
status: "completed",
|
||||
input: { pattern: "src/**/*.ts", path: "." },
|
||||
output: "src/main.ts\nsrc/utils.ts\nsrc/types.ts",
|
||||
title: "Found 3 files",
|
||||
metadata: {},
|
||||
time: { start: now - 6000, end: now - 5800 },
|
||||
},
|
||||
}
|
||||
|
||||
const lsCompleted: ToolPart = {
|
||||
id: "part-ls-001",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "tool",
|
||||
callID: "call-ls-001",
|
||||
tool: "ls",
|
||||
state: {
|
||||
status: "completed",
|
||||
input: { path: "." },
|
||||
output: "src/\npackage.json\ntsconfig.json\nREADME.md",
|
||||
title: "List directory",
|
||||
metadata: {},
|
||||
time: { start: now - 5500, end: now - 5400 },
|
||||
},
|
||||
}
|
||||
|
||||
const bashPending: ToolPart = {
|
||||
id: "part-bash-001",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "tool",
|
||||
callID: "call-bash-001",
|
||||
tool: "bash",
|
||||
state: {
|
||||
status: "pending",
|
||||
input: { description: "Run tests", command: "bun test" },
|
||||
title: "Execute command",
|
||||
metadata: {},
|
||||
time: { start: now - 2000 },
|
||||
},
|
||||
}
|
||||
|
||||
const textPart: TextPart = {
|
||||
id: "part-text-001",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "text",
|
||||
text: "I found the relevant files and will now update them.",
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Permission fixtures
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
const globPermission: PermissionRequest = {
|
||||
id: "perm-glob-001",
|
||||
sessionID: SESSION_ID,
|
||||
toolName: "glob",
|
||||
patterns: ["**/*.md"],
|
||||
args: { pattern: "**/*.md" },
|
||||
tool: { messageID: ASST_MSG_ID, callID: "call-glob-001" },
|
||||
}
|
||||
|
||||
const bashPermission: PermissionRequest = {
|
||||
id: "perm-bash-001",
|
||||
sessionID: SESSION_ID,
|
||||
toolName: "bash",
|
||||
patterns: ["bun test"],
|
||||
args: { command: "bun test" },
|
||||
tool: { messageID: ASST_MSG_ID, callID: "call-bash-001" },
|
||||
}
|
||||
|
||||
const dockPermission: PermissionRequest = {
|
||||
id: "perm-dock-001",
|
||||
sessionID: SESSION_ID,
|
||||
toolName: "write",
|
||||
patterns: ["src/main.tsx", "src/utils.ts"],
|
||||
args: {},
|
||||
// No `tool` field — this is a non-tool (dock) permission
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Question fixtures
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
const questionRequest: QuestionRequest = {
|
||||
id: "question-001",
|
||||
sessionID: SESSION_ID,
|
||||
questions: [
|
||||
{
|
||||
question: "Which testing framework should I use for this project?",
|
||||
header: "Choose a framework",
|
||||
options: [
|
||||
{ label: "Vitest", description: "Fast, Vite-native unit testing" },
|
||||
{ label: "Jest", description: "Widely adopted, rich ecosystem" },
|
||||
{ label: "Playwright", description: "End-to-end browser testing" },
|
||||
{ label: "Bun test", description: "Built-in, zero config" },
|
||||
],
|
||||
},
|
||||
],
|
||||
tool: { messageID: ASST_MSG_ID, callID: "call-question-001" },
|
||||
}
|
||||
|
||||
const questionToolPart: ToolPart = {
|
||||
id: "part-question-001",
|
||||
sessionID: SESSION_ID,
|
||||
messageID: ASST_MSG_ID,
|
||||
type: "tool",
|
||||
callID: "call-question-001",
|
||||
tool: "question",
|
||||
state: {
|
||||
status: "running",
|
||||
input: { question: "Which testing framework?", options: [] },
|
||||
title: "Asking question",
|
||||
metadata: {},
|
||||
time: { start: now - 1000 },
|
||||
},
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Data helpers
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
function dataWith(parts: any[], permissions?: PermissionRequest[]) {
|
||||
return {
|
||||
...defaultMockData,
|
||||
message: {
|
||||
[SESSION_ID]: [baseAssistantMessage],
|
||||
},
|
||||
part: {
|
||||
[ASST_MSG_ID]: parts,
|
||||
},
|
||||
permission: permissions
|
||||
? { [SESSION_ID]: permissions }
|
||||
: {},
|
||||
}
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Meta
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
const meta: Meta = {
|
||||
title: "Composite/Webview",
|
||||
parameters: { layout: "padded" },
|
||||
}
|
||||
export default meta
|
||||
|
||||
type Story = StoryObj
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 1. Tool with inline permission (glob)
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const GlobWithPermission: Story = {
|
||||
name: "Glob + Inline Permission",
|
||||
render: () => {
|
||||
const perms = [globPermission]
|
||||
const data = dataWith([globPending], perms)
|
||||
return (
|
||||
<StoryProviders data={data} permissions={perms} sessionID={SESSION_ID}>
|
||||
<AssistantMessage message={baseAssistantMessage} />
|
||||
</StoryProviders>
|
||||
)
|
||||
},
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 2. Tool with inline permission (bash)
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const BashWithPermission: Story = {
|
||||
name: "Bash + Inline Permission",
|
||||
render: () => {
|
||||
const perms = [bashPermission]
|
||||
const data = dataWith([bashPending], perms)
|
||||
return (
|
||||
<StoryProviders data={data} permissions={perms} sessionID={SESSION_ID}>
|
||||
<AssistantMessage message={baseAssistantMessage} />
|
||||
</StoryProviders>
|
||||
)
|
||||
},
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 3. Permission dock (non-tool bottom prompt)
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const PermissionDock: Story = {
|
||||
name: "Permission Dock",
|
||||
render: () => {
|
||||
const perm = dockPermission
|
||||
return (
|
||||
<StoryProviders sessionID={SESSION_ID}>
|
||||
<div data-component="tool-part-wrapper" data-permission="true">
|
||||
<BasicTool
|
||||
icon="checklist"
|
||||
locked
|
||||
defaultOpen
|
||||
trigger={{
|
||||
title: "Permission required",
|
||||
subtitle: perm.toolName,
|
||||
}}
|
||||
>
|
||||
<Show when={perm.patterns.length > 0}>
|
||||
<div class="permission-dock-patterns">
|
||||
<For each={perm.patterns}>
|
||||
{(pattern) => <code class="permission-dock-pattern">{pattern}</code>}
|
||||
</For>
|
||||
</div>
|
||||
</Show>
|
||||
</BasicTool>
|
||||
<div data-component="permission-prompt">
|
||||
<div data-slot="permission-actions">
|
||||
<Button variant="ghost" size="small">
|
||||
Deny
|
||||
</Button>
|
||||
<Button variant="secondary" size="small">
|
||||
Always Allow
|
||||
</Button>
|
||||
<Button variant="primary" size="small">
|
||||
Allow Once
|
||||
</Button>
|
||||
</div>
|
||||
<p data-slot="permission-hint">Approval applies only to the current session</p>
|
||||
</div>
|
||||
</div>
|
||||
</StoryProviders>
|
||||
)
|
||||
},
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 4. Tool cards — read, glob, grep, ls
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const ToolCards: Story = {
|
||||
name: "Tool Cards",
|
||||
render: () => {
|
||||
const data = dataWith([readCompleted, globCompleted, grepCompleted, lsCompleted])
|
||||
return (
|
||||
<StoryProviders data={data} sessionID={SESSION_ID}>
|
||||
<AssistantMessage message={baseAssistantMessage} />
|
||||
</StoryProviders>
|
||||
)
|
||||
},
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 5. Chat idle — prompt input placeholder
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const ChatIdle: Story = {
|
||||
name: "Chat Idle",
|
||||
render: () => (
|
||||
<StoryProviders sessionID={SESSION_ID} status="idle">
|
||||
<div class="chat-view" style={{ width: "380px" }}>
|
||||
<div class="chat-input">
|
||||
<div
|
||||
style={{
|
||||
padding: "8px 12px",
|
||||
border: "1px solid var(--border-base)",
|
||||
"border-radius": "8px",
|
||||
color: "var(--text-dimmed)",
|
||||
"font-size": "13px",
|
||||
background: "var(--background-input)",
|
||||
}}
|
||||
>
|
||||
Ask anything… (⌘ Enter)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</StoryProviders>
|
||||
),
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 6. Chat busy — working indicator, no prompt
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const ChatBusy: Story = {
|
||||
name: "Chat Busy",
|
||||
render: () => {
|
||||
const data = dataWith([textPart])
|
||||
return (
|
||||
<StoryProviders data={data} sessionID={SESSION_ID} status="busy">
|
||||
<div class="chat-view" style={{ width: "380px" }}>
|
||||
<div class="vscode-session-turn-assistant">
|
||||
<AssistantMessage message={baseAssistantMessage} />
|
||||
</div>
|
||||
<div
|
||||
style={{
|
||||
padding: "8px 12px",
|
||||
display: "flex",
|
||||
"align-items": "center",
|
||||
gap: "8px",
|
||||
color: "var(--text-dimmed)",
|
||||
"font-size": "13px",
|
||||
}}
|
||||
>
|
||||
<span
|
||||
style={{
|
||||
width: "8px",
|
||||
height: "8px",
|
||||
"border-radius": "50%",
|
||||
background: "var(--accent-base)",
|
||||
animation: "pulse 1.5s infinite",
|
||||
}}
|
||||
/>
|
||||
Thinking…
|
||||
</div>
|
||||
</div>
|
||||
</StoryProviders>
|
||||
)
|
||||
},
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 7. Multiple tool calls in one assistant message
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const MultipleToolCalls: Story = {
|
||||
name: "Multiple Tool Calls",
|
||||
render: () => {
|
||||
const data = dataWith([readCompleted, globCompleted, textPart])
|
||||
return (
|
||||
<StoryProviders data={data} sessionID={SESSION_ID}>
|
||||
<AssistantMessage message={baseAssistantMessage} />
|
||||
</StoryProviders>
|
||||
)
|
||||
},
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// 8. Inline question (tool-linked question rendered in message flow)
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
export const InlineQuestion: Story = {
|
||||
name: "Inline Question",
|
||||
render: () => {
|
||||
const qs = [questionRequest]
|
||||
const data = dataWith([textPart, questionToolPart])
|
||||
return (
|
||||
<StoryProviders data={data} questions={qs} sessionID={SESSION_ID}>
|
||||
<AssistantMessage message={baseAssistantMessage} />
|
||||
</StoryProviders>
|
||||
)
|
||||
},
|
||||
}
|
||||
@@ -345,6 +345,7 @@
|
||||
|
||||
.prompt-input-hint {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
@@ -355,6 +356,7 @@
|
||||
|
||||
.prompt-input-hint-selectors {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 4px;
|
||||
|
||||
[data-component="button"] {
|
||||
@@ -694,6 +696,33 @@
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
/* Permission Prompt (inline with tool cards) */
|
||||
[data-component="tool-part-wrapper"][data-permission="true"] {
|
||||
/* When wrapping a Part + permission, the outer wrapper provides the card border.
|
||||
Remove the inner Part's tool-part-wrapper border so we don't get double borders. */
|
||||
> [data-component="tool-part-wrapper"] {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
|
||||
[data-component="permission-prompt"] {
|
||||
border-top: 1px solid var(--border-weak-base, var(--vscode-panel-border));
|
||||
padding: 8px 12px;
|
||||
}
|
||||
|
||||
[data-component="permission-prompt"] [data-slot="permission-actions"] {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
}
|
||||
|
||||
[data-component="permission-prompt"] [data-slot="permission-hint"] {
|
||||
font-size: 11px;
|
||||
color: var(--text-weak, var(--vscode-descriptionForeground));
|
||||
margin: 4px 0 0;
|
||||
}
|
||||
|
||||
/* Dialog Confirmation */
|
||||
.dialog-confirm-body {
|
||||
display: flex;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"name": "@kilocode/cli",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
|
||||
@@ -173,6 +173,7 @@ export namespace Agent {
|
||||
options: {},
|
||||
permission: PermissionNext.merge(
|
||||
defaults,
|
||||
user, // kilocode_change: user before ask-specific so ask's deny+allowlist wins
|
||||
PermissionNext.fromConfig({
|
||||
"*": "deny",
|
||||
read: {
|
||||
@@ -192,7 +193,6 @@ export namespace Agent {
|
||||
[Truncate.GLOB]: "allow",
|
||||
},
|
||||
}),
|
||||
user,
|
||||
),
|
||||
mode: "primary",
|
||||
native: true,
|
||||
|
||||
@@ -78,6 +78,35 @@ test("ask agent has correct default properties", async () => {
|
||||
},
|
||||
})
|
||||
})
|
||||
test("ask agent denies edit/write/bash even when user config adds a specific edit allow", async () => {
|
||||
await using tmp = await tmpdir({
|
||||
config: {
|
||||
permission: {
|
||||
edit: { "src/output.log": "allow" },
|
||||
},
|
||||
},
|
||||
})
|
||||
await Instance.provide({
|
||||
directory: tmp.path,
|
||||
fn: async () => {
|
||||
const ask = await Agent.get("ask")
|
||||
expect(ask).toBeDefined()
|
||||
// user config must not leak edit capability into ask mode — even for the
|
||||
// specific path the user allowed, ask mode must still deny it
|
||||
expect(PermissionNext.evaluate("edit", "src/output.log", ask!.permission).action).toBe("deny")
|
||||
expect(evalPerm(ask, "bash")).toBe("deny")
|
||||
expect(evalPerm(ask, "task")).toBe("deny")
|
||||
// safe tools still work
|
||||
expect(evalPerm(ask, "read")).toBe("allow")
|
||||
expect(evalPerm(ask, "grep")).toBe("allow")
|
||||
// disabled() must also reflect the deny (tools hidden from LLM)
|
||||
const disabled = PermissionNext.disabled(["edit", "write", "bash"], ask!.permission)
|
||||
expect(disabled.has("edit")).toBe(true)
|
||||
expect(disabled.has("write")).toBe(true)
|
||||
expect(disabled.has("bash")).toBe(true)
|
||||
},
|
||||
})
|
||||
})
|
||||
// kilocode_change end
|
||||
|
||||
test("plan agent denies edits except .opencode/plans/*", async () => {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"name": "@kilocode/plugin",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"exports": {
|
||||
".": "./src/index.ts"
|
||||
},
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"dependencies": {},
|
||||
"peerDependencies": {}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://json.schemastore.org/package.json",
|
||||
"name": "@kilocode/sdk",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@opencode-ai/ui",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"exports": {
|
||||
|
||||
@@ -214,6 +214,12 @@
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
/* kilocode_change: always show copy button for the final turn response */
|
||||
[data-slot="text-part-copy-wrapper"][data-is-turn-copy] {
|
||||
opacity: 1;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
&:hover [data-slot="text-part-copy-wrapper"],
|
||||
&:focus-within [data-slot="text-part-copy-wrapper"] {
|
||||
opacity: 1;
|
||||
|
||||
@@ -1114,7 +1114,16 @@ PART_MAPPING["text"] = function TextPartDisplay(props) {
|
||||
<Markdown text={throttledText()} cacheKey={part.id} onClick={handleMarkdownClick} /> {/* kilocode_change */}
|
||||
</div>
|
||||
<Show when={showCopy()}>
|
||||
<div data-slot="text-part-copy-wrapper" data-interrupted={interrupted() ? "" : undefined}>
|
||||
{/* kilocode_change: data-is-turn-copy makes the copy button always visible for the final response */}
|
||||
<div
|
||||
data-slot="text-part-copy-wrapper"
|
||||
data-interrupted={interrupted() ? "" : undefined}
|
||||
data-is-turn-copy={
|
||||
typeof props.showAssistantCopyPartID === "string" && props.showAssistantCopyPartID === part.id
|
||||
? ""
|
||||
: undefined
|
||||
}
|
||||
>
|
||||
<Tooltip
|
||||
value={copied() ? i18n.t("ui.message.copied") : i18n.t("ui.message.copyResponse")}
|
||||
placement="top"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@opencode-ai/util",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@kilocode/upstream-merge",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"description": "Scripts for automating upstream opencode merges into Kilo",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "opencode",
|
||||
"displayName": "opencode",
|
||||
"description": "opencode for VS Code",
|
||||
"version": "7.0.36",
|
||||
"version": "7.0.37",
|
||||
"publisher": "sst-dev",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
||||
Reference in New Issue
Block a user