46e3899945
- Changes (#72): a file git reports `MM` whose working copy equals HEAD again (a staged change since undone on disk) is no longer listed — JetBrains' GitChangesCollector drops it the same way. Mode-only changes stay listed. statusCounts (the dirty-tree safety checks) is unchanged. - Chat (#73): Claude Code runs no hook before a folder is trusted, so a new pane's session has no row; the chat now says the session has not started, offers Open terminal, and asks before typing a message or /model //effort into the pane (an Enter would pick the trust prompt's "No, exit"). - Terminal: Safari + macOS's own Vietnamese Telex replaces the whole word on each key (insertReplacementText), which xterm.js ignores — only each word's first letter reached the pane. The edit is now sent as DELs + the new tail. - Also: Ctrl+V pastes a screenshot into the terminal as a file path; the folder browser fallback lists files for a file field (`files=1`); the macOS native picker opens in front of the browser; a hidden tab is marked while a chat waits or once a turn ended; chat live line shows running calls, turn time and tokens, and "Done in …".
141 lines
5.9 KiB
JSON
141 lines
5.9 KiB
JSON
{
|
|
"emptyPane": "No session in this pane. Start one from the workspace's prompt box.",
|
|
"actions": {
|
|
"newSession": "New session"
|
|
},
|
|
"autocomplete": {
|
|
"fileHint": "Type @ to reference a file",
|
|
"noMatches": "No matches",
|
|
"slashHint": "Type / for slash commands"
|
|
},
|
|
"binary": {
|
|
"missing": "The `{{cli}}` CLI isn't on your PATH. Install {{tool}} or set PATH so the dashboard can spawn it."
|
|
},
|
|
"empty": {
|
|
"body": "Type a prompt and click Run. Output streams here as the model thinks, calls tools, and answers.",
|
|
"title": "Nothing yet"
|
|
},
|
|
"errors": {
|
|
"attachFailed": "Couldn't attach to run: {{message}}",
|
|
"cwdRequired": "Working directory required to start a run",
|
|
"laneCreateFailed": "Failed to create workspace: {{message}}",
|
|
"noLaneSelected": "No workspace selected or could not create one",
|
|
"runStartedButNotAttached": "Run is live but couldn't attach to console: {{message}}",
|
|
"sendFailed": "Couldn't send: {{message}}"
|
|
},
|
|
"fields": {
|
|
"approval": "Approval",
|
|
"approvalNever": "Never",
|
|
"approvalOnRequest": "On request",
|
|
"cwdGroups": {
|
|
"dashboard": "Dashboard server",
|
|
"home": "Home",
|
|
"repo": "Source repos",
|
|
"recent": "Recent - used by Claude Code"
|
|
},
|
|
"cwdNoMatches": "No matches. Type an absolute path to use it directly.",
|
|
"cwdPlaceholder": "Type to search or paste an absolute path…",
|
|
"effort": "Thinking effort",
|
|
"model": "Model",
|
|
"moreModels": "More models",
|
|
"effortDefault": "Default",
|
|
"effortFaster": "Faster",
|
|
"effortSmarter": "Smarter",
|
|
"effortReset": "Back to the model's default",
|
|
"effortDefaultHint": "The model decides — no --effort flag",
|
|
"modelCustom": "Custom…",
|
|
"modelCustomPlaceholder": "model id (e.g. claude-opus-5)",
|
|
"modelInheritLabel": "Inherit from settings",
|
|
"permissionAcceptEdits": "acceptEdits (file edits without asking)",
|
|
"permissionAuto": "auto (recommended - asks only for risky actions)",
|
|
"permissionBypass": "bypassPermissions (DANGER - allows everything without asking)",
|
|
"bypass": "Bypass permissions for this run",
|
|
"permissionDefault": "default (interactive prompts - sessions may hang headlessly)",
|
|
"permissionMode": "Permission mode",
|
|
"permissionPlan": "plan (read-only planning)",
|
|
"sandbox": "Sandbox",
|
|
"sandboxFullAccess": "Full access (dangerous)",
|
|
"sandboxReadOnly": "Read only",
|
|
"sandboxWorkspaceWrite": "Workspace write"
|
|
},
|
|
"hint": {
|
|
"permissionWarning": "bypassPermissions allows ALL tool invocations without confirming. Only use for trusted prompts.",
|
|
"bypassWarning": "{{tool}} will run every command and edit every file without asking. Only for a prompt and a folder you trust.",
|
|
"sandboxWarning": "Codex will run commands with no sandbox."
|
|
},
|
|
"drop": {
|
|
"hint": "Drop files or images to attach",
|
|
"uploading": "Uploading…",
|
|
"failed": "Could not attach the file",
|
|
"remove": "Remove attachment",
|
|
"view": "View image"
|
|
},
|
|
"terminal": {
|
|
"ended": "[session ended, exit code {{code}}]",
|
|
"reconnecting": "Reconnecting… keystrokes are not reaching the session until the terminal is back.",
|
|
"keyboardHint": "Terminal. Press Ctrl+M to toggle whether Tab moves focus out of the terminal; Ctrl+Shift+F (Cmd+F on macOS) finds text.",
|
|
"tabMoves": "Tab moves focus — Ctrl+M to give Tab back to the terminal",
|
|
"selectHint": "Shift+drag to select text in the browser; a plain drag selects in tmux and copies on release.",
|
|
"dismissHint": "Dismiss",
|
|
"find": "Find in terminal",
|
|
"findPrev": "Previous match",
|
|
"findNext": "Next match",
|
|
"findClose": "Close find"
|
|
},
|
|
"chat": {
|
|
"placeholder": "Write a message…",
|
|
"send": "Send",
|
|
"notSent": "The terminal is not connected — the message was not sent.",
|
|
"notStarted": "Claude Code may be asking something in the terminal — whether to trust this folder, for example. Sending now presses Enter there, which can answer it (its preselected choice is \"No, exit\"). Open the terminal to answer it first.",
|
|
"notStartedTitle": "The session has not started",
|
|
"sendAnyway": "Send anyway",
|
|
"stop": "Stop",
|
|
"notStopped": "The terminal is not connected — nothing was stopped.",
|
|
"add": "Add files, skills…",
|
|
"upload": "Upload or add files",
|
|
"projectFiles": "Project files",
|
|
"contextFiles": "Context files",
|
|
"recentUploads": "Recent uploads",
|
|
"searchFiles": "Search files and folders…",
|
|
"skills": "Skills",
|
|
"plugins": "Plugins",
|
|
"manageSkills": "Manage skills",
|
|
"managePlugins": "Manage plugins",
|
|
"none": "Nothing here yet",
|
|
"fromPlugin": "{{name}} plugin",
|
|
"modeFailed": "Could not change the permission mode: {{message}}",
|
|
"outline": {
|
|
"progress": "Progress",
|
|
"outputs": "Outputs",
|
|
"connectors": "Connectors",
|
|
"empty": "Nothing yet",
|
|
"resize": "Resize side panel",
|
|
"hide": "Hide side panel",
|
|
"show": "Activity panel",
|
|
"copyPath": "Copy path: {{path}}",
|
|
"panel": "Session activity panel",
|
|
"used": "Used in this session",
|
|
"uploads": "Uploads",
|
|
"files": "Files read",
|
|
"memory": "Memory",
|
|
"skills": "Skills",
|
|
"close": "Close",
|
|
"noPreview": "No preview for this file here",
|
|
"truncated": "Showing the first part of this file"
|
|
},
|
|
"contextTitle": "Context: {{used}} of {{size}} tokens — Claude Code compacts it when it is nearly full",
|
|
"tab": {
|
|
"waiting": "Waiting",
|
|
"done": "Done"
|
|
}
|
|
},
|
|
"interrupted": {
|
|
"title": "Resume interrupted sessions?",
|
|
"message": "These sessions stopped unexpectedly (the machine shut down, tmux was killed, or the CLI crashed). Tick the ones to resume — each re-reads its whole conversation.",
|
|
"resume_one": "Resume {{count}} session",
|
|
"resume_other": "Resume {{count}} sessions",
|
|
"none": "Don't resume",
|
|
"failed": "Couldn't resume {{name}}: {{message}}"
|
|
}
|
|
}
|