<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="zh_TW">
<context>
    <name>AttachedFilesPlace</name>
    <message>
        <source>Open in Qt Creator</source>
        <translation>在 Qt Creator 中開啟</translation>
    </message>
    <message>
        <source>Open in External Editor</source>
        <translation>在外部編輯器中開啟</translation>
    </message>
    <message>
        <source>Remove</source>
        <translation>移除</translation>
    </message>
</context>
<context>
    <name>BottomBar</name>
    <message>
        <source>Attach file to message</source>
        <translation>附加檔案至訊息</translation>
    </message>
    <message>
        <source>Attach image to message</source>
        <translation>附加圖片至訊息</translation>
    </message>
    <message>
        <source>Link file to context</source>
        <translation>將檔案連結至上下文</translation>
    </message>
    <message>
        <source>Sync open files</source>
        <translation>同步開啟的檔案</translation>
    </message>
    <message>
        <source>Automatically synchronize currently opened files with the model context</source>
        <translation>自動將目前開啟的檔案與模型上下文同步</translation>
    </message>
    <message>
        <source>Compressing...</source>
        <translation>壓縮中...</translation>
    </message>
    <message>
        <source>Cancel</source>
        <translation>取消</translation>
    </message>
    <message>
        <source>Cancel compression</source>
        <translation>取消壓縮</translation>
    </message>
    <message>
        <source>Compress</source>
        <translation>壓縮</translation>
    </message>
    <message>
        <source>Compress chat (create summarized copy using LLM)</source>
        <translation>壓縮聊天(使用 LLM 建立摘要副本)</translation>
    </message>
</context>
<context>
    <name>ChatItem</name>
    <message>
        <source>↑ %1 (cached %2)</source>
        <translation>↑ %1 (已快取 %2)</translation>
    </message>
    <message>
        <source>↑ %1</source>
        <translation>↑ %1</translation>
    </message>
    <message>
        <source>↓ %1 (reasoning %2)</source>
        <translation>↓ %1 (推理 %2)</translation>
    </message>
    <message>
        <source>↓ %1</source>
        <translation>↓ %1</translation>
    </message>
    <message>
        <source>Σ %1</source>
        <translation>Σ %1</translation>
    </message>
    <message>
        <source>Reset chat to this message and edit</source>
        <translation>將聊天重設至此訊息並編輯</translation>
    </message>
    <message>
        <source>Click: Open in Qt Creator
Shift+Click: Open in System Editor</source>
        <translation>點擊:在 Qt Creator 中開啟
Shift+點擊:在系統編輯器中開啟</translation>
    </message>
    <message>
        <source>Failed to load image</source>
        <translation>載入圖片失敗</translation>
    </message>
</context>
<context>
    <name>CodeBlock</name>
    <message>
        <source>Code (%1)</source>
        <translation>程式碼 (%1)</translation>
    </message>
    <message>
        <source>Code</source>
        <translation>程式碼</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>收合</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>展開</translation>
    </message>
    <message>
        <source>Copied</source>
        <translation>已複製</translation>
    </message>
</context>
<context>
    <name>ContextViewer</name>
    <message>
        <source>Chat Context</source>
        <translation>聊天上下文</translation>
    </message>
    <message>
        <source>Refresh</source>
        <translation>重新整理</translation>
    </message>
    <message>
        <source>Close</source>
        <translation>關閉</translation>
    </message>
    <message>
        <source>Base System Prompt</source>
        <translation>基礎系統提示詞</translation>
    </message>
    <message>
        <source>Active</source>
        <translation>啟用</translation>
    </message>
    <message>
        <source>Empty</source>
        <translation>空白</translation>
    </message>
    <message>
        <source>No system prompt configured</source>
        <translation>未設定系統提示詞</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Edit in Settings</source>
        <translation>在設定中編輯</translation>
    </message>
    <message>
        <source>Agent Role</source>
        <translation>代理角色</translation>
    </message>
    <message>
        <source>No role selected. Using base system prompt only.</source>
        <translation>未選擇角色。僅使用基礎系統提示詞。</translation>
    </message>
    <message>
        <source>Manage Roles</source>
        <translation>管理角色</translation>
    </message>
    <message>
        <source>Project Rules</source>
        <translation>專案規則</translation>
    </message>
    <message>
        <source>%1 active</source>
        <translation>%1 個啟用中</translation>
    </message>
    <message>
        <source>None</source>
        <translation>無</translation>
    </message>
    <message>
        <source>Rules (%1)</source>
        <translation>規則 (%1)</translation>
    </message>
    <message>
        <source>Content</source>
        <translation>內容</translation>
    </message>
    <message>
        <source>No project rules found.
Create .md files in .qodeassist/rules/common/ or .qodeassist/rules/chat/</source>
        <translation>找不到專案規則。
請在 .qodeassist/rules/common/ 或 .qodeassist/rules/chat/ 中建立 .md 檔案</translation>
    </message>
    <message>
        <source>Open Rules Folder</source>
        <translation>開啟規則資料夾</translation>
    </message>
    <message>
        <source>Final prompt: Base System Prompt + Agent Role + Project Info + Project Rules + Linked Files</source>
        <translation>最終提示詞:基礎系統提示詞 + 代理角色 + 專案資訊 + 專案規則 + 已連結檔案</translation>
    </message>
</context>
<context>
    <name>DiffStatistics</name>
    <message>
        <source>+%1 lines, -%2 lines</source>
        <translation>+%1 行, -%2 行</translation>
    </message>
    <message>
        <source>+%1 lines</source>
        <translation>+%1 行</translation>
    </message>
    <message>
        <source>-%1 lines</source>
        <translation>-%1 行</translation>
    </message>
    <message>
        <source>No changes</source>
        <translation>無變更</translation>
    </message>
</context>
<context>
    <name>FileEditBlock</name>
    <message>
        <source>ARCHIVED</source>
        <translation>已封存</translation>
    </message>
    <message>
        <source>APPLIED</source>
        <translation>已套用</translation>
    </message>
    <message>
        <source>REJECTED</source>
        <translation>已拒絕</translation>
    </message>
    <message>
        <source>PENDING</source>
        <translation>待處理</translation>
    </message>
    <message>
        <source>Replace</source>
        <translation>取代</translation>
    </message>
    <message>
        <source>Append</source>
        <translation>附加</translation>
    </message>
    <message>
        <source>%1: %2 (+%3 -%4)</source>
        <translation>%1: %2 (+%3 -%4)</translation>
    </message>
    <message>
        <source>%1: %2 (+%3)</source>
        <translation>%1: %2 (+%3)</translation>
    </message>
    <message>
        <source>Open file in editor and navigate to changes</source>
        <translation>在編輯器中開啟檔案並導覽至變更處</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>收合</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>展開</translation>
    </message>
</context>
<context>
    <name>FileEditsActionBar</name>
    <message>
        <source>File Edit in Current Message</source>
        <translation>目前訊息中的檔案編輯</translation>
    </message>
    <message>
        <source>%1 File Edits in Current Message</source>
        <translation>目前訊息中的 %1 個檔案編輯</translation>
    </message>
    <message>
        <source>%1 applied</source>
        <translation>%1 個已套用</translation>
    </message>
    <message>
        <source>%1 pending</source>
        <translation>%1 個待處理</translation>
    </message>
    <message>
        <source>%1 rejected</source>
        <translation>%1 個已拒絕</translation>
    </message>
    <message>
        <source>Apply All (%1)</source>
        <translation>全部套用 (%1)</translation>
    </message>
    <message>
        <source>Reapply All (%1)</source>
        <translation>全部重新套用 (%1)</translation>
    </message>
    <message>
        <source>Apply all pending and rejected edits in this message</source>
        <translation>套用此訊息中所有待處理及已拒絕的編輯</translation>
    </message>
    <message>
        <source>Reapply all rejected edits in this message</source>
        <translation>重新套用此訊息中所有已拒絕的編輯</translation>
    </message>
    <message>
        <source>Undo All (%1)</source>
        <translation>全部復原 (%1)</translation>
    </message>
    <message>
        <source>Undo all applied edits in this message</source>
        <translation>復原此訊息中所有已套用的編輯</translation>
    </message>
</context>
<context>
    <name>MessageNavigator</name>
    <message>
        <source>#%1  ·  %2</source>
        <translation>#%1  ·  %2</translation>
    </message>
    <message>
        <source>Jump to message #%1</source>
        <translation>跳至訊息 #%1</translation>
    </message>
</context>
<context>
    <name>QObject</name>
    <message>
        <source>Template Not Found</source>
        <translation>找不到範本</translation>
    </message>
    <message>
        <source>Template &apos;%1&apos; was not found or has been updated. Please re-set new one.</source>
        <translation>找不到範本 &apos;%1&apos; 或已更新。請重新設定。</translation>
    </message>
    <message>
        <source>Providers</source>
        <translation>提供者</translation>
    </message>
    <message>
        <source>Agents</source>
        <translation>代理</translation>
    </message>
    <message>
        <source>Current Settings</source>
        <translation>目前設定</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatCompressor</name>
    <message>
        <source>Compression already in progress</source>
        <translation>壓縮已在進行中</translation>
    </message>
    <message>
        <source>No chat file to compress</source>
        <translation>沒有可壓縮的聊天檔案</translation>
    </message>
    <message>
        <source>Chat is empty, nothing to compress</source>
        <translation>聊天為空,沒有可壓縮的內容</translation>
    </message>
    <message>
        <source>No provider available</source>
        <translation>無可用提供者</translation>
    </message>
    <message>
        <source>No template available</source>
        <translation>無可用範本</translation>
    </message>
    <message>
        <source>Compression cancelled</source>
        <translation>壓縮已取消</translation>
    </message>
    <message>
        <source>Failed to save compressed chat</source>
        <translation>儲存壓縮聊天失敗</translation>
    </message>
    <message>
        <source>Compression failed: %1</source>
        <translation>壓縮失敗:%1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatFileManager</name>
    <message>
        <source>File is not accessible: %1</source>
        <translation>無法存取檔案:%1</translation>
    </message>
    <message>
        <source>Failed to copy file: %1</source>
        <translation>複製檔案失敗:%1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatHistoryStore</name>
    <message>
        <source>Save Chat History</source>
        <translation>儲存聊天記錄</translation>
    </message>
    <message>
        <source>JSON files (*.json)</source>
        <translation>JSON 檔案 (*.json)</translation>
    </message>
    <message>
        <source>Load Chat History</source>
        <translation>載入聊天記錄</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::ChatRootView</name>
    <message>
        <source>Chat compressed successfully!</source>
        <translation>聊天壓縮成功!</translation>
    </message>
    <message>
        <source>This chat file is already in use by another QodeAssist chat session.</source>
        <translation>此聊天檔案已被另一個 QodeAssist 聊天工作階段使用。</translation>
    </message>
    <message>
        <source>This chat is already open in another QodeAssist chat session.</source>
        <translation>此聊天已在另一個 QodeAssist 聊天工作階段中開啟。</translation>
    </message>
    <message>
        <source>Select Files to Attach</source>
        <translation>選擇要附加的檔案</translation>
    </message>
    <message numerus="yes">
        <source>Images automatically moved to Attach zone (%n file(s))</source>
        <translation>
            <numerusform>圖片已自動移至附加區 (%n 個檔案)</numerusform>
        </translation>
    </message>
    <message>
        <source>Select Images to Attach</source>
        <translation>選擇要附加的圖片</translation>
    </message>
    <message>
        <source>Images (*.png *.jpg *.jpeg *.gif *.bmp *.webp)</source>
        <translation>圖片 (*.png *.jpg *.jpeg *.gif *.bmp *.webp)</translation>
    </message>
    <message>
        <source>Compression is already in progress</source>
        <translation>壓縮已在進行中</translation>
    </message>
    <message>
        <source>No chat file to compress. Please save the chat first.</source>
        <translation>沒有可壓縮的聊天檔案。請先儲存聊天。</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Chat::NavigationPanel</name>
    <message>
        <source>QodeAssist Chat</source>
        <translation>QodeAssist 聊天</translation>
    </message>
</context>
<context>
    <name>QodeAssist::EditorChatButton</name>
    <message>
        <source>Open QodeAssist Chat</source>
        <translation>開啟 QodeAssist 聊天</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Mcp::McpServerManager</name>
    <message>
        <source>QodeAssist MCP server exposing Qt Creator project tools.</source>
        <translation>QodeAssist MCP 伺服器,提供 Qt Creator 專案工具。</translation>
    </message>
</context>
<context>
    <name>QodeAssist::QodeAssistClient</name>
    <message>
        <source>Code completion failed: %1</source>
        <translation>程式碼補全失敗:%1</translation>
    </message>
    <message>
        <source>Quick refactor failed</source>
        <translation>快速重構失敗</translation>
    </message>
    <message>
        <source>Quick refactor failed: %1</source>
        <translation>快速重構失敗:%1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::RefactorWidget</name>
    <message>
        <source>◄ Original</source>
        <translation>◄ 原始</translation>
    </message>
    <message>
        <source>Refactored ►</source>
        <translation>重構後 ►</translation>
    </message>
    <message>
        <source>✓ Apply (⌘+Enter)</source>
        <translation>✓ 套用 (⌘+Enter)</translation>
    </message>
    <message>
        <source>✓ Apply (Ctrl+Enter)</source>
        <translation>✓ 套用 (Ctrl+Enter)</translation>
    </message>
    <message>
        <source>✗ Decline (Esc)</source>
        <translation>✗ 拒絕 (Esc)</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentDetailPane</name>
    <message>
        <source>Open in editor</source>
        <translation>在編輯器中開啟</translation>
    </message>
    <message>
        <source>Duplicate…</source>
        <translation>複製…</translation>
    </message>
    <message>
        <source>Delete</source>
        <translation>刪除</translation>
    </message>
    <message>
        <source>Identity</source>
        <translation>身分</translation>
    </message>
    <message>
        <source>Extends:</source>
        <translation>繼承自:</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>名稱:</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>描述:</translation>
    </message>
    <message>
        <source>Tags:</source>
        <translation>標籤:</translation>
    </message>
    <message>
        <source>Comma-separated. Free-form — used to filter and group the agent list.</source>
        <translation>以逗號分隔。自由格式 — 用於篩選及群組代理清單。</translation>
    </message>
    <message>
        <source>System role</source>
        <translation>系統角色</translation>
    </message>
    <message>
        <source>Prepended to every request as the system message.</source>
        <translation>作為系統訊息附加於每次請求之前。</translation>
    </message>
    <message>
        <source>Context</source>
        <translation>上下文</translation>
    </message>
    <message>
        <source>Jinja2 template rendered with ContextManager bindings into the agent.context system-prompt layer. Empty = no context block.</source>
        <translation>使用 ContextManager 繫結將 Jinja2 範本渲染至 agent.context 系統提示詞層。空白 = 無上下文區塊。</translation>
    </message>
    <message>
        <source>Connection</source>
        <translation>連線</translation>
    </message>
    <message>
        <source>Provider:</source>
        <translation>提供者:</translation>
    </message>
    <message>
        <source>The provider instance this agent uses. URL is inherited from the instance.</source>
        <translation>此代理使用的提供者實例。URL 繼承自該實例。</translation>
    </message>
    <message>
        <source>Endpoint:</source>
        <translation>端點:</translation>
    </message>
    <message>
        <source>Appended to the provider&apos;s URL. Blank uses the provider default.</source>
        <translation>附加於提供者的 URL 後。空白則使用提供者預設值。</translation>
    </message>
    <message>
        <source>Model:</source>
        <translation>模型:</translation>
    </message>
    <message>
        <source>Match</source>
        <translation>比對</translation>
    </message>
    <message>
        <source>When a feature slot has multiple bound agents, the first whose match rules satisfy the current context wins.</source>
        <translation>當功能槽位繫結多個代理時,第一個比對規則滿足目前上下文的代理勝出。</translation>
    </message>
    <message>
        <source>File patterns:</source>
        <translation>檔案樣式:</translation>
    </message>
    <message>
        <source>Globs, comma-separated. Empty matches every file.</source>
        <translation>以逗號分隔的 Glob 樣式。空白則符合所有檔案。</translation>
    </message>
    <message>
        <source>Template</source>
        <translation>範本</translation>
    </message>
    <message>
        <source>Jinja2 template (via inja) rendered to the request body. Built-in context: ctx.prefix, ctx.suffix, ctx.history, ctx.system_prompt, agent.model.</source>
        <translation>Jinja2 範本 (透過 inja) 渲染至請求主體。內建上下文:ctx.prefix、ctx.suffix、ctx.history、ctx.system_prompt、agent.model。</translation>
    </message>
    <message>
        <source>message_format:</source>
        <translation>message_format:</translation>
    </message>
    <message>
        <source>Load errors</source>
        <translation>載入錯誤</translation>
    </message>
    <message>
        <source>▸ Show raw TOML</source>
        <translation>▸ 顯示原始 TOML</translation>
    </message>
    <message>
        <source>▾ Hide raw TOML</source>
        <translation>▾ 隱藏原始 TOML</translation>
    </message>
    <message>
        <source>No description provided.</source>
        <translation>未提供描述。</translation>
    </message>
    <message>
        <source>%1  (missing — not in provider library)</source>
        <translation>%1  (缺少 — 不在提供者函式庫中)</translation>
    </message>
    <message>
        <source>(provider default)</source>
        <translation>(提供者預設)</translation>
    </message>
    <message>
        <source># effective request line
(unknown — provider instance not found)</source>
        <translation># 實際請求行
(未知 — 找不到提供者實例)</translation>
    </message>
    <message>
        <source>effective request line</source>
        <translation>實際請求行</translation>
    </message>
    <message>
        <source>(no system role set)</source>
        <translation>(未設定系統角色)</translation>
    </message>
    <message>
        <source>(no context block)</source>
        <translation>(無上下文區塊)</translation>
    </message>
    <message>
        <source>(matches every file)</source>
        <translation>(符合所有檔案)</translation>
    </message>
    <message>
        <source>(inherited from parent / none)</source>
        <translation>(繼承自父項 / 無)</translation>
    </message>
    <message>
        <source>(truncated at %1 bytes)</source>
        <translation>(在 %1 位元組處截斷)</translation>
    </message>
    <message>
        <source>(source file is empty)</source>
        <translation>(原始檔案為空)</translation>
    </message>
    <message>
        <source>(source file unavailable: %1)</source>
        <translation>(原始檔案無法使用:%1)</translation>
    </message>
    <message>
        <source>Bundled agents are read-only — duplicate to edit.</source>
        <translation>內建代理為唯讀 — 請複製後再編輯。</translation>
    </message>
    <message>
        <source>Bundled agents cannot be deleted.</source>
        <translation>無法刪除內建代理。</translation>
    </message>
    <message>
        <source>Select an agent</source>
        <translation>選擇一個代理</translation>
    </message>
    <message>
        <source>Pick an agent from the list to see its details.</source>
        <translation>從清單中挑選一個代理以檢視其詳細資訊。</translation>
    </message>
    <message>
        <source>error: %1</source>
        <translation>錯誤:%1</translation>
    </message>
    <message>
        <source>warning: %1</source>
        <translation>警告:%1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentListPane</name>
    <message>
        <source>Filter agents…</source>
        <translation>篩選代理…</translation>
    </message>
    <message>
        <source>User</source>
        <translation>使用者</translation>
    </message>
    <message>
        <source>Bundled</source>
        <translation>內建</translation>
    </message>
    <message>
        <source>No agents match these filters.</source>
        <translation>沒有符合這些篩選條件的代理。</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentRoleDialog</name>
    <message>
        <source>Add Agent Role</source>
        <translation>新增代理角色</translation>
    </message>
    <message>
        <source>Duplicate Agent Role</source>
        <translation>複製代理角色</translation>
    </message>
    <message>
        <source>Edit Agent Role</source>
        <translation>編輯代理角色</translation>
    </message>
    <message>
        <source>e.g., Developer, Code Reviewer</source>
        <translation>例如:開發者、程式碼審查者</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>名稱:</translation>
    </message>
    <message>
        <source>e.g., developer, code_reviewer</source>
        <translation>例如:developer、code_reviewer</translation>
    </message>
    <message>
        <source>ID:</source>
        <translation>ID:</translation>
    </message>
    <message>
        <source>Brief description of this role...</source>
        <translation>此角色的簡短描述...</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>描述:</translation>
    </message>
    <message>
        <source>System Prompt:</source>
        <translation>系統提示詞:</translation>
    </message>
    <message>
        <source>You are an expert in...

Your role is to:
- Task 1
- Task 2
- Task 3</source>
        <translation>您是...方面的專家

您的角色是:
- 任務 1
- 任務 2
- 任務 3</translation>
    </message>
    <message>
        <source>ID cannot be changed for existing roles</source>
        <translation>現有角色的 ID 無法變更</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::AgentsWidget</name>
    <message>
        <source>Agents</source>
        <translation>代理</translation>
    </message>
    <message>
        <source>Reload from disk</source>
        <translation>從磁碟重新載入</translation>
    </message>
    <message>
        <source>Open agents folder</source>
        <translation>開啟代理資料夾</translation>
    </message>
    <message>
        <source>Open agent</source>
        <translation>開啟代理</translation>
    </message>
    <message>
        <source>&apos;%1&apos; is bundled with the plugin and read-only.
Use Duplicate to create an editable user copy.</source>
        <translation>&apos;%1&apos; 隨外掛內建且為唯讀。
請使用「複製」建立可編輯的使用者副本。</translation>
    </message>
    <message>
        <source>Agent &apos;%1&apos; has no editable source file.</source>
        <translation>代理 &apos;%1&apos; 沒有可編輯的原始檔案。</translation>
    </message>
    <message>
        <source>Could not open %1.</source>
        <translation>無法開啟 %1。</translation>
    </message>
    <message>
        <source>Duplicate</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Delete Agent</source>
        <translation>刪除代理</translation>
    </message>
    <message>
        <source>Delete agent &apos;%1&apos;?

This will remove the file:
%2</source>
        <translation>刪除代理 &apos;%1&apos;?

這將移除檔案:
%2</translation>
    </message>
    <message>
        <source>Could not delete the agent file:
%1</source>
        <translation>無法刪除代理檔案:
%1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::McpClientsListAspect</name>
    <message>
        <source>Connected.</source>
        <translation>已連線。</translation>
    </message>
    <message>
        <source>Connecting…</source>
        <translation>連線中…</translation>
    </message>
    <message>
        <source>Failed.</source>
        <translation>失敗。</translation>
    </message>
    <message>
        <source>Failed: %1</source>
        <translation>失敗:%1</translation>
    </message>
    <message>
        <source>Disabled.</source>
        <translation>已停用。</translation>
    </message>
    <message>
        <source>everything (reference test server)</source>
        <translation>everything (參考測試伺服器)</translation>
    </message>
    <message>
        <source>filesystem (local files)</source>
        <translation>filesystem (本機檔案)</translation>
    </message>
    <message>
        <source>memory (in-memory key-value)</source>
        <translation>memory (記憶體中的鍵值對)</translation>
    </message>
    <message>
        <source>git (local git ops)</source>
        <translation>git (本機 git 操作)</translation>
    </message>
    <message>
        <source>time (system clock)</source>
        <translation>time (系統時鐘)</translation>
    </message>
    <message>
        <source>qtcreator (Qt Creator&apos;s built-in MCP server)</source>
        <translation>qtcreator (Qt Creator 內建的 MCP 伺服器)</translation>
    </message>
    <message>
        <source>qt-docs (Qt documentation)</source>
        <translation>qt-docs (Qt 文件)</translation>
    </message>
    <message>
        <source>remote (SSE / HTTP)</source>
        <translation>remote (SSE / HTTP)</translation>
    </message>
    <message>
        <source>Server reports no tools.</source>
        <translation>伺服器回報無工具。</translation>
    </message>
    <message>
        <source>Tools</source>
        <translation>工具</translation>
    </message>
    <message>
        <source>Enable / disable this MCP server</source>
        <translation>啟用 / 停用此 MCP 伺服器</translation>
    </message>
    <message>
        <source>Remove this server from the config.</source>
        <translation>從設定檔中移除此伺服器。</translation>
    </message>
    <message>
        <source>Remove server</source>
        <translation>移除伺服器</translation>
    </message>
    <message>
        <source>Remove server &apos;%1&apos; from the config?</source>
        <translation>從設定檔中移除伺服器 &apos;%1&apos;?</translation>
    </message>
    <message>
        <source>Open Config</source>
        <translation>開啟設定檔</translation>
    </message>
    <message>
        <source>Refresh MCP List</source>
        <translation>重新整理 MCP 清單</translation>
    </message>
    <message>
        <source>Note: restart Qt Creator to apply MCP changes to already-opened chats and running sessions.</source>
        <translation>注意:重新啟動 Qt Creator 以將 MCP 變更套用至已開啟的聊天及執行中的工作階段。</translation>
    </message>
    <message>
        <source>Quick Setup</source>
        <translation>快速設定</translation>
    </message>
    <message>
        <source>Pick a preset to append a ready-made server entry to the config (auto-suffixed if the name is taken).</source>
        <translation>選擇預設集以將現成的伺服器項目附加至設定檔 (若名稱已被使用會自動加上後綴)。</translation>
    </message>
    <message>
        <source>-- Select Preset --</source>
        <translation>-- 選擇預設集 --</translation>
    </message>
    <message>
        <source>No servers configured. Add a preset below or edit the JSON.</source>
        <translation>尚未設定伺服器。請在下方新增預設集或編輯 JSON。</translation>
    </message>
    <message>
        <source>0 server(s) defined.</source>
        <translation>已定義 0 個伺服器。</translation>
    </message>
    <message>
        <source>%1 server(s) defined, %2 enabled.</source>
        <translation>已定義 %1 個伺服器,已啟用 %2 個。</translation>
    </message>
    <message>
        <source>MCP configuration</source>
        <translation>MCP 設定</translation>
    </message>
    <message>
        <source>Failed to write %1:
%2</source>
        <translation>寫入 %1 失敗:
%2</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::ProviderDetailPane</name>
    <message>
        <source>Edit…</source>
        <translation>編輯…</translation>
    </message>
    <message>
        <source>Open in editor</source>
        <translation>在編輯器中開啟</translation>
    </message>
    <message>
        <source>Open this provider&apos;s TOML file in Qt Creator. Bundled providers are read-only — duplicate first.</source>
        <translation>在 Qt Creator 中開啟此提供者的 TOML 檔案。內建提供者為唯讀 — 請先複製。</translation>
    </message>
    <message>
        <source>Duplicate…</source>
        <translation>複製…</translation>
    </message>
    <message>
        <source>Delete</source>
        <translation>刪除</translation>
    </message>
    <message>
        <source>Cancel</source>
        <translation>取消</translation>
    </message>
    <message>
        <source>Save</source>
        <translation>儲存</translation>
    </message>
    <message>
        <source>Identity</source>
        <translation>身分</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>名稱:</translation>
    </message>
    <message>
        <source>Client API:</source>
        <translation>用戶端 API:</translation>
    </message>
    <message>
        <source>The client API this provider speaks. Cannot be changed after creation.</source>
        <translation>此提供者使用的用戶端 API。建立後無法變更。</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>描述:</translation>
    </message>
    <message>
        <source>Endpoint</source>
        <translation>端點</translation>
    </message>
    <message>
        <source>URL:</source>
        <translation>URL:</translation>
    </message>
    <message>
        <source>Base URL. Agents append their endpoint path (e.g. /chat/completions) to this.</source>
        <translation>基本 URL。代理會在其後附加端點路徑 (例如 /chat/completions)。</translation>
    </message>
    <message>
        <source>Credentials</source>
        <translation>憑證</translation>
    </message>
    <message>
        <source>Enter API key…</source>
        <translation>輸入 API 金鑰…</translation>
    </message>
    <message>
        <source>Show / hide API key</source>
        <translation>顯示 / 隱藏 API 金鑰</translation>
    </message>
    <message>
        <source>Save key</source>
        <translation>儲存金鑰</translation>
    </message>
    <message>
        <source>Clear</source>
        <translation>清除</translation>
    </message>
    <message>
        <source>Erase the stored API key for this provider</source>
        <translation>清除此提供者已儲存的 API 金鑰</translation>
    </message>
    <message>
        <source>API key:</source>
        <translation>API 金鑰:</translation>
    </message>
    <message>
        <source>Launch</source>
        <translation>啟動</translation>
    </message>
    <message>
        <source>idle</source>
        <translation>閒置</translation>
    </message>
    <message>
        <source>Start</source>
        <translation>啟動</translation>
    </message>
    <message>
        <source>Stop</source>
        <translation>停止</translation>
    </message>
    <message>
        <source>Restart</source>
        <translation>重新啟動</translation>
    </message>
    <message>
        <source>▸ Show launch terminal</source>
        <translation>▸ 顯示啟動終端機</translation>
    </message>
    <message>
        <source>▾ Hide launch terminal</source>
        <translation>▾ 隱藏啟動終端機</translation>
    </message>
    <message>
        <source>▸ Show raw TOML</source>
        <translation>▸ 顯示原始 TOML</translation>
    </message>
    <message>
        <source>▾ Hide raw TOML</source>
        <translation>▾ 隱藏原始 TOML</translation>
    </message>
    <message>
        <source>No description provided.</source>
        <translation>未提供描述。</translation>
    </message>
    <message>
        <source>— not required (local provider)</source>
        <translation>— 不需要 (本機提供者)</translation>
    </message>
    <message>
        <source>This provider type does not use a key.</source>
        <translation>此提供者類型不使用金鑰。</translation>
    </message>
    <message>
        <source>Stored — enter a new key to replace it.</source>
        <translation>已儲存 — 輸入新金鑰以取代。</translation>
    </message>
    <message>
        <source>A key is stored. Type a new key and press Save key to replace it, or Clear to erase it.</source>
        <translation>已儲存金鑰。輸入新金鑰並按下「儲存金鑰」以取代,或按「清除」以刪除。</translation>
    </message>
    <message>
        <source>No key stored yet. Type a key and press Save key.</source>
        <translation>尚未儲存金鑰。請輸入金鑰並按下「儲存金鑰」。</translation>
    </message>
    <message>
        <source>Select a provider</source>
        <translation>選擇提供者</translation>
    </message>
    <message>
        <source>No [launch] block. This provider is treated as external — the plugin will not spawn or supervise any process. Add a [launch] block to the TOML to have the plugin manage a local server here.</source>
        <translation>無 [launch] 區塊。此提供者被視為外部 — 外掛不會產生或監督任何處理程序。在 TOML 中加入 [launch] 區塊可讓外掛在此管理本機伺服器。</translation>
    </message>
    <message>
        <source> &lt;span style=&apos;color:gray&apos;&gt;(detached — survives Qt Creator restart)&lt;/span&gt;</source>
        <translation> &lt;span style=&apos;color:gray&apos;&gt;(已分離 — 可在 Qt Creator 重新啟動後保留)&lt;/span&gt;</translation>
    </message>
    <message>
        <source>starting…</source>
        <translation>啟動中…</translation>
    </message>
    <message>
        <source>probing…</source>
        <translation>探測中…</translation>
    </message>
    <message>
        <source>ready</source>
        <translation>就緒</translation>
    </message>
    <message>
        <source>stopping…</source>
        <translation>停止中…</translation>
    </message>
    <message>
        <source>failed</source>
        <translation>失敗</translation>
    </message>
    <message>
        <source>failed — %1</source>
        <translation>失敗 — %1</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::ProvidersPageWidget</name>
    <message>
        <source>Providers</source>
        <translation>提供者</translation>
    </message>
    <message>
        <source>Filter providers…</source>
        <translation>篩選提供者…</translation>
    </message>
    <message>
        <source>Open in editor</source>
        <translation>在編輯器中開啟</translation>
    </message>
    <message>
        <source>Bundled providers are read-only. Use Duplicate to create an editable user copy first.</source>
        <translation>內建提供者為唯讀。請先使用「複製」建立可編輯的使用者副本。</translation>
    </message>
    <message>
        <source>No user instances yet.</source>
        <translation>尚無使用者實例。</translation>
    </message>
    <message>
        <source>No bundled instances loaded.</source>
        <translation>未載入內建實例。</translation>
    </message>
    <message>
        <source>User</source>
        <translation>使用者</translation>
    </message>
    <message>
        <source>Bundled</source>
        <translation>內建</translation>
    </message>
    <message>
        <source>Duplicate provider</source>
        <translation>複製提供者</translation>
    </message>
    <message>
        <source>Name for the new provider:</source>
        <translation>新提供者的名稱:</translation>
    </message>
    <message>
        <source>An instance named &apos;%1&apos; already exists.</source>
        <translation>已存在名為 &apos;%1&apos; 的實例。</translation>
    </message>
    <message>
        <source>Delete provider</source>
        <translation>刪除提供者</translation>
    </message>
    <message>
        <source>Delete user provider &apos;%1&apos;?

File: %2</source>
        <translation>刪除使用者提供者 &apos;%1&apos;?

檔案:%2</translation>
    </message>
    <message>
        <source>Failed to delete file:
%1</source>
        <translation>刪除檔案失敗:
%1</translation>
    </message>
    <message>
        <source>Save</source>
        <translation>儲存</translation>
    </message>
    <message>
        <source>Name cannot be empty.</source>
        <translation>名稱不可為空。</translation>
    </message>
    <message>
        <source>Save anyway?</source>
        <translation>仍要儲存?</translation>
    </message>
    <message>
        <source>Saved to:
%1

but could not remove the old file:
%2

Two provider files now describe this instance — delete the old file manually to avoid a duplicate-name error.</source>
        <translation>已儲存至:
%1

但無法移除舊檔案:
%2

現在有兩個提供者檔案描述此實例 — 請手動刪除舊檔案以避免名稱重複錯誤。</translation>
    </message>
    <message>
        <source>Clear API key</source>
        <translation>清除 API 金鑰</translation>
    </message>
    <message>
        <source>Erase the stored API key for &apos;%1&apos;?</source>
        <translation>清除 &apos;%1&apos; 已儲存的 API 金鑰?</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Settings::TagFilterStrip</name>
    <message>
        <source>FILTER BY TAG</source>
        <translation>依標籤篩選</translation>
    </message>
    <message>
        <source>clear</source>
        <translation>清除</translation>
    </message>
</context>
<context>
    <name>QodeAssist::Tools::TodoTool</name>
    <message>
        <source>Error: &apos;tasks&apos; parameter (array) is required for &apos;add&apos; operation. Example: {&quot;operation&quot;: &quot;add&quot;, &quot;tasks&quot;: [&quot;Task 1&quot;, &quot;Task 2&quot;]}</source>
        <translation>錯誤:&apos;add&apos; 操作需要 &apos;tasks&apos; 參數 (陣列)。範例:{&quot;operation&quot;: &quot;add&quot;, &quot;tasks&quot;: [&quot;Task 1&quot;, &quot;Task 2&quot;]}</translation>
    </message>
    <message>
        <source>Error: &apos;tasks&apos; array cannot be empty. Provide at least one task.</source>
        <translation>錯誤:&apos;tasks&apos; 陣列不可為空。請至少提供一項任務。</translation>
    </message>
    <message>
        <source>Error: All tasks in &apos;tasks&apos; array are empty strings.</source>
        <translation>錯誤:&apos;tasks&apos; 陣列中的所有任務皆為空字串。</translation>
    </message>
    <message>
        <source>Error: &apos;todo_ids&apos; parameter (array) is required for &apos;complete&apos; operation. Example: {&quot;operation&quot;: &quot;complete&quot;, &quot;todo_ids&quot;: [1, 2, 3]}</source>
        <translation>錯誤:&apos;complete&apos; 操作需要 &apos;todo_ids&apos; 參數 (陣列)。範例:{&quot;operation&quot;: &quot;complete&quot;, &quot;todo_ids&quot;: [1, 2, 3]}</translation>
    </message>
    <message>
        <source>Error: &apos;todo_ids&apos; array cannot be empty. Provide at least one ID.</source>
        <translation>錯誤:&apos;todo_ids&apos; 陣列不可為空。請至少提供一個 ID。</translation>
    </message>
    <message>
        <source>Error: All IDs in &apos;todo_ids&apos; array are invalid. IDs must be positive integers.</source>
        <translation>錯誤:&apos;todo_ids&apos; 陣列中的所有 ID 皆無效。ID 必須為正整數。</translation>
    </message>
    <message>
        <source>Error: Unknown operation &apos;%1&apos;. Valid operations: &apos;add&apos;, &apos;complete&apos;, &apos;list&apos;</source>
        <translation>錯誤:未知的操作 &apos;%1&apos;。有效的操作:&apos;add&apos;、&apos;complete&apos;、&apos;list&apos;</translation>
    </message>
    <message>
        <source>✓ Added 1 new task</source>
        <translation>✓ 已新增 1 項新任務</translation>
    </message>
    <message>
        <source>✓ Added %1 new tasks</source>
        <translation>✓ 已新增 %1 項新任務</translation>
    </message>
    <message>
        <source>Error: No todos found in this session</source>
        <translation>錯誤:此工作階段中找不到待辦事項</translation>
    </message>
    <message>
        <source>✓ Marked 1 task as completed</source>
        <translation>✓ 已將 1 項任務標記為完成</translation>
    </message>
    <message>
        <source>✓ Marked %1 tasks as completed</source>
        <translation>✓ 已將 %1 項任務標記為完成</translation>
    </message>
    <message>
        <source>⚠ %1 already completed</source>
        <translation>⚠ %1 已完成</translation>
    </message>
    <message>
        <source>❌ Not found: %1</source>
        <translation>❌ 找不到:%1</translation>
    </message>
    <message>
        <source>📋 TODO List: (empty)</source>
        <translation>📋 待辦清單:(空白)</translation>
    </message>
    <message>
        <source>📋 TODO List:</source>
        <translation>📋 待辦清單:</translation>
    </message>
    <message>
        <source>Progress: %1/%2 completed (%3%)</source>
        <translation>進度:%1/%2 已完成 (%3%)</translation>
    </message>
    <message>
        <source>📋 All tasks completed! 🎉</source>
        <translation>📋 所有任務皆已完成!🎉</translation>
    </message>
    <message>
        <source>📋 Remaining tasks:</source>
        <translation>📋 剩餘任務:</translation>
    </message>
</context>
<context>
    <name>QodeAssist::UpdateDialog</name>
    <message>
        <source>QodeAssist Update</source>
        <translation>QodeAssist 更新</translation>
    </message>
    <message>
        <source>QodeAssist is an open-source project that helps
developers write better code. If you find it useful, please</source>
        <translation>QodeAssist 是一個開放原始碼專案,協助
開發者撰寫更優質的程式碼。若您覺得實用,請</translation>
    </message>
    <message>
        <source>Install via Extension Registry (recommended)</source>
        <translation>透過 Extension Registry 安裝（推薦）</translation>
    </message>
    <message>
        <source>In Qt Creator open Extensions → Browser tab, enable &quot;Use External Repository&quot;, add one of the URLs below and click Apply to install QodeAssist. Updates are then installed from the same screen.</source>
        <translation>在 Qt Creator 中開啟 Extensions → Browser 分頁，啟用「Use External Repository」，新增下方其中一個 URL，然後按一下 Apply 以安裝 QodeAssist。之後可在同一畫面安裝更新。</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Latest (for the newest Qt Creator, always up to date)</source>
        <translation>最新（適用於最新的 Qt Creator，始終保持最新）</translation>
    </message>
    <message>
        <source>Only for Qt Creator %1</source>
        <translation>僅適用於 Qt Creator %1</translation>
    </message>
    <message>
        <source>Alternative: QodeAssistUpdater</source>
        <translation>替代方案：QodeAssistUpdater</translation>
    </message>
    <message>
        <source>A standalone tool for installing and updating the plugin.</source>
        <translation>用於安裝與更新外掛的獨立工具。</translation>
    </message>
    <message>
        <source>Download QodeAssistUpdater</source>
        <translation>下載 QodeAssistUpdater</translation>
    </message>
    <message>
        <source>A new version of QodeAssist is available!</source>
        <translation>QodeAssist 有新版本可用!</translation>
    </message>
    <message>
        <source>Version %1 is now available - you have %2</source>
        <translation>版本 %1 現已推出 - 您目前的版本為 %2</translation>
    </message>
    <message>
        <source>Release Notes:</source>
        <translation>版本資訊:</translation>
    </message>
    <message>
        <source>Open Release Page</source>
        <translation>開啟發佈頁面</translation>
    </message>
    <message>
        <source>Open Plugin Folder</source>
        <translation>開啟外掛資料夾</translation>
    </message>
    <message>
        <source>Close</source>
        <translation>關閉</translation>
    </message>
    <message>
        <source>QodeAssist is up to date</source>
        <translation>QodeAssist 已是最新版本</translation>
    </message>
    <message>
        <source>You are using the latest version: %1</source>
        <translation>您正在使用最新版本:%1</translation>
    </message>
    <message>
        <source>No release notes available. Check the release page for more information.</source>
        <translation>無版本資訊可用。請查看發佈頁面以取得更多資訊。</translation>
    </message>
</context>
<context>
    <name>QodeAssist::UpdateStatusWidget</name>
    <message>
        <source>Update</source>
        <translation>更新</translation>
    </message>
    <message>
        <source>New version: v%1</source>
        <translation>新版本:v%1</translation>
    </message>
    <message>
        <source>Check update information</source>
        <translation>檢查更新資訊</translation>
    </message>
</context>
<context>
    <name>QtC::QodeAssist</name>
    <message>
        <source>Cannot create user provider folder:
%1</source>
        <translation>無法建立使用者提供者資料夾:
%1</translation>
    </message>
    <message>
        <source>Cannot pick a free filename in:
%1</source>
        <translation>無法在以下位置選擇可用的檔案名稱:
%1</translation>
    </message>
    <message>
        <source>Cannot write %1:
%2</source>
        <translation>無法寫入 %1:
%2</translation>
    </message>
    <message>
        <source>Write failed for %1:
%2</source>
        <translation>寫入 %1 失敗:
%2</translation>
    </message>
    <message>
        <source>Request timeout (seconds):</source>
        <translation>請求逾時（秒）:</translation>
    </message>
    <message>
        <source>Maximum time to wait for the model to send data before a request is aborted. Applies to all requests — chat, code completion, quick refactor and chat compression. The timer resets every time data is received, so this effectively limits the time-to-first-token and any stall between tokens. Increase it for slow or local models that need a long time to start responding. Set to 0 to disable the timeout.</source>
        <translation>在中止請求之前，等待模型傳送資料的最長時間。適用於所有請求——聊天、程式碼補全、快速重構和聊天壓縮。每次收到資料時計時器都會重設，因此實際上限制了第一個 token 的等待時間以及 token 之間的任何停頓。對於需要較長時間才能開始回應的慢速或本機模型，請增大此值。設為 0 可停用逾時。</translation>
    </message>
    <message>
        <source>Quick Setup</source>
        <translation>快速設定</translation>
    </message>
    <message>
        <source>Configure API Key</source>
        <translation>設定 API 金鑰</translation>
    </message>
    <message>
        <source>Open Provider Settings to configure API keys</source>
        <translation>開啟提供者設定以設定 API 金鑰</translation>
    </message>
    <message>
        <source>Load configuration (includes predefined cloud models)</source>
        <translation>載入設定 (包含預先定義的雲端模型)</translation>
    </message>
    <message>
        <source>Show template information</source>
        <translation>顯示範本資訊</translation>
    </message>
    <message>
        <source>Network</source>
        <translation>網路</translation>
    </message>
    <message>
        <source>Support the development of QodeAssist:</source>
        <translation>支持 QodeAssist 的開發:</translation>
    </message>
    <message>
        <source>Template Information</source>
        <translation>範本資訊</translation>
    </message>
    <message>
        <source>Template</source>
        <translation>範本</translation>
    </message>
    <message>
        <source>Description:</source>
        <translation>描述:</translation>
    </message>
    <message>
        <source>Failed to save configuration. Check logs for details.</source>
        <translation>儲存設定失敗。請查看記錄檔以取得詳細資訊。</translation>
    </message>
    <message>
        <source>[Preset] configurations are predefined cloud models ready to use.</source>
        <translation>[Preset] 設定為預先定義的雲端模型,可直接使用。</translation>
    </message>
    <message>
        <source>Predefined configurations cannot be deleted.</source>
        <translation>無法刪除預先定義的設定。</translation>
    </message>
    <message>
        <source>Failed to delete configuration.</source>
        <translation>刪除設定失敗。</translation>
    </message>
    <message>
        <source>-- Select Preset --</source>
        <translation>-- 選擇預設集 --</translation>
    </message>
    <message>
        <source>Enable QodeAssist</source>
        <translation>啟用 QodeAssist</translation>
    </message>
    <message>
        <source>General</source>
        <translation>一般</translation>
    </message>
    <message>
        <source>Reset Page to Defaults</source>
        <translation>將頁面重設為預設值</translation>
    </message>
    <message>
        <source>Check Update</source>
        <translation>檢查更新</translation>
    </message>
    <message>
        <source>Select...</source>
        <translation>選擇...</translation>
    </message>
    <message>
        <source>Provider:</source>
        <translation>提供者:</translation>
    </message>
    <message>
        <source>Model:</source>
        <translation>模型:</translation>
    </message>
    <message>
        <source>Template:</source>
        <translation>範本:</translation>
    </message>
    <message>
        <source>URL:</source>
        <translation>URL:</translation>
    </message>
    <message>
        <source>Status:</source>
        <translation>狀態:</translation>
    </message>
    <message>
        <source>Test</source>
        <translation>測試</translation>
    </message>
    <message>
        <source>Enable Logging</source>
        <translation>啟用記錄</translation>
    </message>
    <message>
        <source>Log messages are visible in General Messages pane</source>
        <translation>記錄訊息會顯示在一般訊息窗格中</translation>
    </message>
    <message>
        <source>Check for updates when Qt Creator starts</source>
        <translation>在 Qt Creator 啟動時檢查更新</translation>
    </message>
    <message>
        <source>Enable Chat(If you have performance issues try disabling this, need restart QtC)</source>
        <translation>啟用聊天 (若有效能問題請嘗試停用,需重新啟動 QtC)</translation>
    </message>
    <message>
        <source>Custom endpoint:</source>
        <translation>自訂端點:</translation>
    </message>
    <message>
        <source>Code Completion</source>
        <translation>程式碼補全</translation>
    </message>
    <message>
        <source>Chat Assistant</source>
        <translation>聊天助理</translation>
    </message>
    <message>
        <source>Quick Refactor</source>
        <translation>快速重構</translation>
    </message>
    <message>
        <source>Chat Compression</source>
        <translation>聊天壓縮</translation>
    </message>
    <message>
        <source>Agent Pipelines</source>
        <translation>代理流程</translation>
    </message>
    <message>
        <source>Inline completions while you type. Matchers run on every request.</source>
        <translation>在您輸入時提供行內補全。比對器會在每次請求時執行。</translation>
    </message>
    <message>
        <source>Conversational assistant in the QodeAssist panel.</source>
        <translation>QodeAssist 面板中的對話式助理。</translation>
    </message>
    <message>
        <source>Used when a chat conversation needs to be summarised to stay within context.</source>
        <translation>當聊天對話需要摘要以維持在上下文範圍內時使用。</translation>
    </message>
    <message>
        <source>Inline editor-driven refactors via the Quick Refactor action.</source>
        <translation>透過快速重構動作進行的編輯器驅動行內重構。</translation>
    </message>
    <message>
        <source>Reset Settings</source>
        <translation>重設設定</translation>
    </message>
    <message>
        <source>Are you sure you want to reset all settings to default values?</source>
        <translation>您確定要將所有設定重設為預設值嗎?</translation>
    </message>
    <message>
        <source>Current template description:</source>
        <translation>目前範本描述:</translation>
    </message>
    <message>
        <source>Connection Error</source>
        <translation>連線錯誤</translation>
    </message>
    <message>
        <source>Unable to retrieve the list of models from the server.</source>
        <translation>無法從伺服器取得模型清單。</translation>
    </message>
    <message>
        <source>Please verify the following:
- Server is running and accessible
- URL is correct
- Provider is properly configured
- API key is correctly set (if required)

You can try selecting a different provider or changing the URL:</source>
        <translation>請確認下列事項:
- 伺服器正在執行且可存取
- URL 正確
- 提供者已正確設定
- API 金鑰已正確設定 (若需要)

您可以嘗試選擇不同的提供者或變更 URL:</translation>
    </message>
    <message>
        <source>Select Provider</source>
        <translation>選擇提供者</translation>
    </message>
    <message>
        <source>Select URL</source>
        <translation>選擇 URL</translation>
    </message>
    <message>
        <source>Close</source>
        <translation>關閉</translation>
    </message>
    <message>
        <source>Model Selection</source>
        <translation>模型選擇</translation>
    </message>
    <message>
        <source>Select from previously used models or enter a new model name.

If entering a new model name:
• For providers with automatic listing - ensure the model is installed
• For providers without listing support - check provider&apos;s documentation
• Make sure the model name matches exactly</source>
        <translation>從先前使用過的模型中選擇,或輸入新的模型名稱。

若輸入新的模型名稱:
• 對於支援自動列表的提供者 - 請確認模型已安裝
• 對於不支援列表的提供者 - 請查看提供者的文件
• 請確保模型名稱完全一致</translation>
    </message>
    <message>
        <source>Model name:</source>
        <translation>模型名稱:</translation>
    </message>
    <message>
        <source>OK</source>
        <translation>確定</translation>
    </message>
    <message>
        <source>Cancel</source>
        <translation>取消</translation>
    </message>
    <message>
        <source>Enter Model Manually</source>
        <translation>手動輸入模型</translation>
    </message>
    <message>
        <source>URL Selection</source>
        <translation>URL 選擇</translation>
    </message>
    <message>
        <source>Select from the list of default and previously used URLs, or enter a custom one.
Please ensure the selected URL is accessible and the service is running.</source>
        <translation>從預設及先前使用過的 URL 清單中選擇,或輸入自訂的 URL。
請確保所選 URL 可存取且服務正在執行。</translation>
    </message>
    <message>
        <source>Use default provider URL or from history</source>
        <translation>使用預設提供者 URL 或歷史記錄中的 URL</translation>
    </message>
    <message>
        <source>Enter custom URL</source>
        <translation>輸入自訂 URL</translation>
    </message>
    <message>
        <source>Enter Model Name Manually</source>
        <translation>手動輸入模型名稱</translation>
    </message>
    <message>
        <source>Auto Completion Settings</source>
        <translation>自動補全設定</translation>
    </message>
    <message>
        <source>Add new preset for language</source>
        <translation>為語言新增預設集</translation>
    </message>
    <message>
        <source>Save Config...</source>
        <translation>儲存設定...</translation>
    </message>
    <message>
        <source>Load Config...</source>
        <translation>載入設定...</translation>
    </message>
    <message>
        <source>Open Folder</source>
        <translation>開啟資料夾</translation>
    </message>
    <message>
        <source>Save Configuration</source>
        <translation>儲存設定</translation>
    </message>
    <message>
        <source>Load Configuration</source>
        <translation>載入設定</translation>
    </message>
    <message>
        <source>Configuration name:</source>
        <translation>設定名稱:</translation>
    </message>
    <message>
        <source>Select Configuration</source>
        <translation>選擇設定</translation>
    </message>
    <message>
        <source>No saved configurations found.</source>
        <translation>找不到已儲存的設定。</translation>
    </message>
    <message>
        <source>Configuration saved successfully.</source>
        <translation>設定儲存成功。</translation>
    </message>
    <message>
        <source>Configuration loaded successfully.</source>
        <translation>設定載入成功。</translation>
    </message>
    <message>
        <source>Delete</source>
        <translation>刪除</translation>
    </message>
    <message>
        <source>Are you sure you want to delete this configuration?</source>
        <translation>您確定要刪除此設定嗎?</translation>
    </message>
    <message>
        <source>Enable Auto Complete</source>
        <translation>啟用自動補全</translation>
    </message>
    <message>
        <source>Enable Multiline Completion</source>
        <translation>啟用多行補全</translation>
    </message>
    <message>
        <source>Text output proccessing mode:</source>
        <translation>文字輸出處理模式:</translation>
    </message>
    <message>
        <source>Auto: Automatically detects codeblock and applies processing when found, other text as comments
Force Processing: Always processes text with codeblock formatting and other text as comments
Raw Text: Shows unprocessed text without any formatting</source>
        <translation>自動:自動偵測程式碼區塊,找到時套用處理,其他文字視為註解
強制處理:一律以程式碼區塊格式處理文字,其他文字視為註解
原始文字:顯示未經處理且無任何格式的文字</translation>
    </message>
    <message>
        <source>Completion trigger mode:</source>
        <translation>補全觸發模式:</translation>
    </message>
    <message>
        <source>Hint-based: Shows a hint when typing, press Tab to request completion
Automatic: Automatically requests completion after typing threshold</source>
        <translation>提示式:輸入時顯示提示,按 Tab 鍵請求補全
自動:在輸入達到門檻後自動請求補全</translation>
    </message>
    <message>
        <source>Completion mode:</source>
        <translation>補全模式:</translation>
    </message>
    <message>
        <source>Automatic: requests completion while typing (with smart context gates).
Manual: no auto-triggering; invoke via the &apos;Request QodeAssist Suggestion&apos; shortcut (default Ctrl+Alt+Q, reconfigurable in Preferences &gt; Keyboard).</source>
        <translation>自動:在輸入時請求補全 (具備智慧上下文閘門)。
手動:無自動觸發;透過「Request QodeAssist Suggestion」快捷鍵叫用 (預設 Ctrl+Alt+Q,可在「偏好設定 &gt; 鍵盤」中重新設定)。</translation>
    </message>
    <message>
        <source>Smart context-aware triggering</source>
        <translation>智慧上下文感知觸發</translation>
    </message>
    <message>
        <source>When enabled, auto-completion is suppressed in places where Qt Creator&apos;s built-in completion is usually stronger (middle of an identifier, right after &apos;.&apos;, &apos;-&gt;&apos;, &apos;::&apos;) and is triggered more eagerly after structural characters like &apos;(&apos;, &apos;,&apos;, &apos;{&apos;, &apos;=&apos; and on fresh indented lines.</source>
        <translation>啟用後,在 Qt Creator 內建補全通常較強的位置 (識別字中間,緊接在 &apos;.&apos;、&apos;-&gt;&apos;、&apos;::&apos; 之後) 將抑制自動補全,而在結構性字元如 &apos;(&apos;、&apos;,&apos;、&apos;{&apos;、&apos;=&apos; 之後及新縮排行上則更積極觸發。</translation>
    </message>
    <message>
        <source>Don&apos;t dismiss Qt Creator&apos;s completion popup</source>
        <translation>不關閉 Qt Creator 的補全彈出視窗</translation>
    </message>
    <message>
        <source>When enabled, an AI completion arriving while Qt Creator&apos;s own completion popup is already visible will not force it closed. The LLM suggestion still appears inline.</source>
        <translation>啟用後,當 Qt Creator 自身的補全彈出視窗已顯示時抵達的 AI 補全不會強制關閉該視窗。LLM 建議仍會以行內方式顯示。</translation>
    </message>
    <message>
        <source>Cancel in-flight request on new input</source>
        <translation>在新輸入時取消進行中的請求</translation>
    </message>
    <message>
        <source>When enabled, every new keystroke cancels any completion request already in flight and restarts the debounce timer. Useful for slow local models where an outdated answer is rarely worth waiting for.
When disabled (default), the in-flight request is kept; when the answer arrives, the plugin compares it with characters typed in the meantime and either trims the matching prefix or drops the answer.</source>
        <translation>啟用後,每次新按鍵都會取消任何進行中的補全請求並重新啟動防抖計時器。對於緩慢的本機模型很有用,因為過時的答案通常不值得等待。
停用時 (預設),會保留進行中的請求;當答案抵達時,外掛會將其與此期間輸入的字元比較,並裁減符合的前置字串或捨棄該答案。</translation>
    </message>
    <message>
        <source>with delay(ms)</source>
        <translation>延遲時間 (毫秒)</translation>
    </message>
    <message>
        <source>Delay before sending the completion request.
(Only for Automatic trigger mode)</source>
        <translation>傳送補全請求前的延遲。
(僅適用於自動觸發模式)</translation>
    </message>
    <message>
        <source>AI suggestion triggers after typing</source>
        <translation>輸入後觸發 AI 建議</translation>
    </message>
    <message>
        <source>The number of characters that need to be typed within the typing interval before an AI suggestion request is sent automatically.
(Only for Automatic trigger mode)</source>
        <translation>在輸入間隔內需要輸入的字元數,達到此數量後將自動傳送 AI 建議請求。
(僅適用於自動觸發模式)</translation>
    </message>
    <message>
        <source>character(s) within(ms)</source>
        <translation>字元數於 (毫秒) 內</translation>
    </message>
    <message>
        <source>The time window (in milliseconds) during which the character threshold must be met to trigger an AI suggestion request automatically.
(Only for Automatic trigger mode)</source>
        <translation>在此時間範圍 (毫秒) 內必須達到字元門檻才能自動觸發 AI 建議請求。
(僅適用於自動觸發模式)</translation>
    </message>
    <message>
        <source>Hint shows after typing</source>
        <translation>輸入後顯示提示</translation>
    </message>
    <message>
        <source>The number of characters that need to be typed before the hint widget appears (only for Hint-based trigger mode).</source>
        <translation>顯示提示元件之前需要輸入的字元數 (僅適用於提示式觸發模式)。</translation>
    </message>
    <message>
        <source>Hint auto-hide timeout (ms)</source>
        <translation>提示自動隱藏逾時 (毫秒)</translation>
    </message>
    <message>
        <source>Time in milliseconds after which the hint widget will automatically hide (only for Hint-based trigger mode).</source>
        <translation>提示元件在多少毫秒後自動隱藏 (僅適用於提示式觸發模式)。</translation>
    </message>
    <message>
        <source>Trigger key:</source>
        <translation>觸發鍵:</translation>
    </message>
    <message>
        <source>Key to press for requesting completion when hint is visible.
Space is recommended as least conflicting with context menu.
(Only for Hint-based trigger mode)</source>
        <translation>當提示顯示時按下此鍵以請求補全。
建議使用空格鍵,因為它與內容功能表的衝突最少。
(僅適用於提示式觸發模式)</translation>
    </message>
    <message>
        <source>Ignore spaces and tabs in character count</source>
        <translation>字元計數中忽略空格與 Tab</translation>
    </message>
    <message>
        <source>When enabled, spaces and tabs are not counted towards the character threshold for triggering completions. This helps trigger completions based on actual code characters only.</source>
        <translation>啟用後,空格與 Tab 不會計入觸發補全的字元門檻。這有助於僅根據實際的程式碼字元觸發補全。</translation>
    </message>
    <message>
        <source>Temperature:</source>
        <translation>溫度:</translation>
    </message>
    <message>
        <source>Max Tokens:</source>
        <translation>最大 Token 數:</translation>
    </message>
    <message>
        <source>Top P:</source>
        <translation>Top P:</translation>
    </message>
    <message>
        <source>Top K:</source>
        <translation>Top K:</translation>
    </message>
    <message>
        <source>Presence Penalty:</source>
        <translation>存在懲罰:</translation>
    </message>
    <message>
        <source>Frequency Penalty:</source>
        <translation>頻率懲罰:</translation>
    </message>
    <message>
        <source>Read Full File</source>
        <translation>讀取整個檔案</translation>
    </message>
    <message>
        <source>Read Strings Before Cursor:</source>
        <translation>讀取游標前的字串:</translation>
    </message>
    <message>
        <source>Read Strings After Cursor:</source>
        <translation>讀取游標後的字串:</translation>
    </message>
    <message>
        <source>Use System Prompt</source>
        <translation>使用系統提示詞</translation>
    </message>
    <message>
        <source>Use special system prompt and user message for non FIM models</source>
        <translation>為非 FIM 模型使用特殊的系統提示詞與使用者訊息</translation>
    </message>
    <message>
        <source>System prompt for non FIM models:</source>
        <translation>非 FIM 模型的系統提示詞:</translation>
    </message>
    <message>
        <source>User message for non FIM models:</source>
        <translation>非 FIM 模型的使用者訊息:</translation>
    </message>
    <message>
        <source>Additional Programming Languages for handling: Example: rust,//,rust rs,rs</source>
        <translation>額外可處理的程式語言:範例:rust,//,rust rs,rs</translation>
    </message>
    <message>
        <source>Specify additional programming languages in format: name,comment_style,model_names,extensions
Example: rust,//,rust rs,rs
Fields: language name, comment prefix, names from LLM (space-separated), file extensions (space-separated)</source>
        <translation>以下列格式指定額外的程式語言:名稱,註解樣式,模型名稱,副檔名
範例:rust,//,rust rs,rs
欄位:語言名稱、註解前置字串、LLM 名稱 (以空格分隔)、檔案副檔名 (以空格分隔)</translation>
    </message>
    <message>
        <source>Show progress indicator during code completion</source>
        <translation>在程式碼補全期間顯示進度指示器</translation>
    </message>
    <message>
        <source>Abort existing assist on new completion request</source>
        <translation>在新補全請求時中止現有的協助</translation>
    </message>
    <message>
        <source>When enabled, cancels any active Qt Creator code assist popup before requesting LLM completion.
(Only for Automatic trigger mode)</source>
        <translation>啟用後,在請求 LLM 補全前取消任何使用中的 Qt Creator 程式碼協助彈出視窗。
(僅適用於自動觸發模式)</translation>
    </message>
    <message>
        <source>Include context from open files</source>
        <translation>包含來自開啟檔案的上下文</translation>
    </message>
    <message>
        <source>Max Changes Cache Size:</source>
        <translation>最大變更快取大小:</translation>
    </message>
    <message>
        <source>Time to suspend Ollama after completion request (in minutes), Only Ollama,  -1 to disable</source>
        <translation>在補全請求後暫停 Ollama 的時間 (分鐘),僅限 Ollama,-1 為停用</translation>
    </message>
    <message>
        <source>Context Window:</source>
        <translation>上下文視窗:</translation>
    </message>
    <message>
        <source>Reasoning effort:</source>
        <translation>推理努力程度:</translation>
    </message>
    <message>
        <source>Constrains effort on reasoning for OpenAI gpt-5 and o-series models:

None: No reasoning (gpt-5.1 only)
Minimal: Minimal reasoning effort (o-series only)
Low: Low reasoning effort
Medium: Balanced reasoning (default for most models)
High: Maximum reasoning effort (gpt-5-pro only supports this)

Note: Reducing effort = faster responses + fewer tokens</source>
        <translation>限制 OpenAI gpt-5 與 o 系列模型的推理努力程度:

無:不推理 (僅限 gpt-5.1)
最小:最少的推理努力 (僅限 o 系列)
低:低度推理努力
中:平衡推理 (大多數模型的預設值)
高:最大推理努力 (僅 gpt-5-pro 支援)

注意:降低努力程度 = 更快的回應 + 更少的 Token</translation>
    </message>
    <message>
        <source>Prompts for FIM models</source>
        <translation>FIM 模型的提示詞</translation>
    </message>
    <message>
        <source>Prompts for Non FIM models</source>
        <translation>非 FIM 模型的提示詞</translation>
    </message>
    <message>
        <source>General Settings</source>
        <translation>一般設定</translation>
    </message>
    <message>
        <source>Automatic Trigger Mode</source>
        <translation>自動觸發模式</translation>
    </message>
    <message>
        <source>General Parameters</source>
        <translation>一般參數</translation>
    </message>
    <message>
        <source>Advanced Parameters</source>
        <translation>進階參數</translation>
    </message>
    <message>
        <source>Context Settings</source>
        <translation>上下文設定</translation>
    </message>
    <message>
        <source>OpenAI Responses API</source>
        <translation>OpenAI Responses API</translation>
    </message>
    <message>
        <source>Ollama Settings</source>
        <translation>Ollama 設定</translation>
    </message>
    <message>
        <source>Sync open files with assistant by default</source>
        <translation>預設將開啟的檔案與助理同步</translation>
    </message>
    <message>
        <source>Enable autosave when message received</source>
        <translation>在收到訊息時啟用自動儲存</translation>
    </message>
    <message>
        <source>Enable chat in bottom toolbar</source>
        <translation>在底部工具列啟用聊天</translation>
    </message>
    <message>
        <source>Enable chat in navigation panel</source>
        <translation>在導覽面板啟用聊天</translation>
    </message>
    <message>
        <source>Enable tools/function calling</source>
        <translation>啟用工具/函式呼叫</translation>
    </message>
    <message>
        <source>When enabled, AI can use tools to read files, search project, and build code</source>
        <translation>啟用後,AI 可使用工具來讀取檔案、搜尋專案及建置程式碼</translation>
    </message>
    <message>
        <source>Auto-compress chat when session tokens exceed:</source>
        <translation>當工作階段 Token 超過以下值時自動壓縮聊天:</translation>
    </message>
    <message>
        <source>After each assistant response, if the running session token total exceeds the threshold, the chat is summarized and a new compressed chat is started automatically. The original chat is preserved on disk.</source>
        <translation>在每次助理回應後,若目前工作階段的 Token 總數超過門檻,聊天將被摘要,並自動開啟新的壓縮聊天。原始聊天會保留在磁碟上。</translation>
    </message>
    <message>
        <source>Enable extended thinking mode.</source>
        <translation>啟用延伸思考模式。</translation>
    </message>
    <message>
        <source>Enable extended thinking mode for complex reasoning tasks.This provides step-by-step reasoning before the final answer.Temperature is 1.0 accordingly API requirement</source>
        <translation>為複雜推理任務啟用延伸思考模式。這在最終答案之前提供逐步推理。根據 API 要求,溫度為 1.0</translation>
    </message>
    <message>
        <source>Thinking budget tokens:</source>
        <translation>思考預算 Token:</translation>
    </message>
    <message>
        <source>Maximum number of tokens Claude can use for internal reasoning. Larger budgets improve quality but increase latency. Minimum: 1024, Recommended: 10000-16000.</source>
        <translation>Claude 可用於內部推理的最大 Token 數。較大的預算可提升品質但會增加延遲。最小值:1024,建議:10000-16000。</translation>
    </message>
    <message>
        <source>Thinking mode max output tokens:</source>
        <translation>思考模式最大輸出 Token:</translation>
    </message>
    <message>
        <source>Maximum number of tokens for the final response when thinking mode is enabled. Set to -1 to use the default max tokens setting. Recommended: 4096-16000.</source>
        <translation>啟用思考模式時最終回應的最大 Token 數。設為 -1 可使用預設的最大 Token 設定。建議:4096-16000。</translation>
    </message>
    <message>
        <source>Text Font:</source>
        <translation>文字字型:</translation>
    </message>
    <message>
        <source>Text Font Size:</source>
        <translation>文字字型大小:</translation>
    </message>
    <message>
        <source>Code Font:</source>
        <translation>程式碼字型:</translation>
    </message>
    <message>
        <source>Code Font Size:</source>
        <translation>程式碼字型大小:</translation>
    </message>
    <message>
        <source>Text Format:</source>
        <translation>文字格式:</translation>
    </message>
    <message>
        <source>Chat Renderer:</source>
        <translation>聊天渲染器:</translation>
    </message>
    <message>
        <source>Chat Settings</source>
        <translation>聊天設定</translation>
    </message>
    <message>
        <source>Tools</source>
        <translation>工具</translation>
    </message>
    <message>
        <source>Extended Thinking (Claude)</source>
        <translation>延伸思考 (Claude)</translation>
    </message>
    <message>
        <source>Agent Roles</source>
        <translation>代理角色</translation>
    </message>
    <message>
        <source>Enable Tools</source>
        <translation>啟用工具</translation>
    </message>
    <message>
        <source>Enable AI tools/functions for quick refactoring (allows reading project files, searching code, etc.)</source>
        <translation>啟用 AI 工具/函式以進行快速重構 (允許讀取專案檔案、搜尋程式碼等)</translation>
    </message>
    <message>
        <source>Enable Thinking Mode</source>
        <translation>啟用思考模式</translation>
    </message>
    <message>
        <source>Enable extended thinking mode for complex refactoring tasks (supported by compatible models like Claude and Google AI)</source>
        <translation>為複雜的重構任務啟用延伸思考模式 (由相容的模型支援,如 Claude 與 Google AI)</translation>
    </message>
    <message>
        <source>Thinking Budget Tokens:</source>
        <translation>思考預算 Token:</translation>
    </message>
    <message>
        <source>Number of tokens allocated for thinking process. Use -1 for dynamic thinking (model decides), 0 to disable, or positive value for custom budget</source>
        <translation>分配給思考過程的 Token 數。使用 -1 表示動態思考 (由模型決定),0 表示停用,或正值表示自訂預算</translation>
    </message>
    <message>
        <source>Thinking Max Output Tokens:</source>
        <translation>思考最大輸出 Token:</translation>
    </message>
    <message>
        <source>Maximum output tokens when thinking mode is enabled (includes thinking + response)</source>
        <translation>啟用思考模式時的最大輸出 Token (包含思考 + 回應)</translation>
    </message>
    <message>
        <source>Lines Before Cursor/Selection:</source>
        <translation>游標/選取範圍之前的行數:</translation>
    </message>
    <message>
        <source>Number of lines to include before cursor or selection for context</source>
        <translation>為上下文在游標或選取範圍之前包含的行數</translation>
    </message>
    <message>
        <source>Lines After Cursor/Selection:</source>
        <translation>游標/選取範圍之後的行數:</translation>
    </message>
    <message>
        <source>Number of lines to include after cursor or selection for context</source>
        <translation>為上下文在游標或選取範圍之後包含的行數</translation>
    </message>
    <message>
        <source>Display Mode:</source>
        <translation>顯示模式:</translation>
    </message>
    <message>
        <source>Choose how to display refactoring suggestions:
- Inline Widget: Shows refactor in a widget overlay with Apply/Decline buttons (default)
- Qt Creator Suggestion: Uses Qt Creator&apos;s built-in suggestion system</source>
        <translation>選擇如何顯示重構建議:
- 行內元件:在元件覆蓋層中顯示重構,並提供「套用/拒絕」按鈕 (預設)
- Qt Creator 建議:使用 Qt Creator 內建的建議系統</translation>
    </message>
    <message>
        <source>Inline Widget</source>
        <translation>行內元件</translation>
    </message>
    <message>
        <source>Qt Creator Suggestion</source>
        <translation>Qt Creator 建議</translation>
    </message>
    <message>
        <source>Widget Orientation:</source>
        <translation>元件方向:</translation>
    </message>
    <message>
        <source>Choose default orientation for refactor widget:
- Horizontal: Original and refactored code side by side (default)
- Vertical: Original and refactored code stacked vertically</source>
        <translation>選擇重構元件的預設方向:
- 水平:原始與重構後的程式碼並排顯示 (預設)
- 垂直:原始與重構後的程式碼垂直堆疊</translation>
    </message>
    <message>
        <source>Horizontal</source>
        <translation>水平</translation>
    </message>
    <message>
        <source>Vertical</source>
        <translation>垂直</translation>
    </message>
    <message>
        <source>Widget Minimum Width:</source>
        <translation>元件最小寬度:</translation>
    </message>
    <message>
        <source>Minimum width for the refactor widget (in pixels)</source>
        <translation>重構元件的最小寬度 (像素)</translation>
    </message>
    <message>
        <source>Widget Maximum Width:</source>
        <translation>元件最大寬度:</translation>
    </message>
    <message>
        <source>Maximum width for the refactor widget (in pixels)</source>
        <translation>重構元件的最大寬度 (像素)</translation>
    </message>
    <message>
        <source>Widget Minimum Height:</source>
        <translation>元件最小高度:</translation>
    </message>
    <message>
        <source>Minimum height for the refactor widget (in pixels)</source>
        <translation>重構元件的最小高度 (像素)</translation>
    </message>
    <message>
        <source>Widget Maximum Height:</source>
        <translation>元件最大高度:</translation>
    </message>
    <message>
        <source>Maximum height for the refactor widget (in pixels)</source>
        <translation>重構元件的最大高度 (像素)</translation>
    </message>
    <message>
        <source>System Prompt:</source>
        <translation>系統提示詞:</translation>
    </message>
    <message>
        <source>Include context from open files in quick refactor</source>
        <translation>在快速重構中包含來自開啟檔案的上下文</translation>
    </message>
    <message>
        <source>Tools Settings</source>
        <translation>工具設定</translation>
    </message>
    <message>
        <source>Display Settings</source>
        <translation>顯示設定</translation>
    </message>
    <message>
        <source>Prompt Settings</source>
        <translation>提示詞設定</translation>
    </message>
    <message>
        <source>Allow file access outside project</source>
        <translation>允許存取專案外的檔案</translation>
    </message>
    <message>
        <source>Allow tools to read, write, and create files outside the project scope (system headers, Qt files, external libraries).</source>
        <translation>允許工具讀取、寫入及建立專案範圍外的檔案 (系統標頭、Qt 檔案、外部函式庫)。</translation>
    </message>
    <message>
        <source>Automatically apply file edits</source>
        <translation>自動套用檔案編輯</translation>
    </message>
    <message>
        <source>When enabled, file edits suggested by AI are applied immediately. When disabled, each edit is staged for manual approval.</source>
        <translation>啟用後,AI 建議的檔案編輯會立即套用。停用時,每項編輯都會暫存以待手動核准。</translation>
    </message>
    <message>
        <source>Max tool continuations:</source>
        <translation>最大工具接續次數:</translation>
    </message>
    <message>
        <source>Maximum number of consecutive tool-use rounds in a single request. Each round lets the model call tools and receive results before continuing. Higher values allow more complex multi-step tasks but increase token usage.</source>
        <translation>單一請求中連續使用工具的最大輪數。每一輪都讓模型呼叫工具並接收結果後再繼續。較高的值允許更複雜的多步驟任務,但會增加 Token 用量。</translation>
    </message>
    <message>
        <source>List Project Files</source>
        <translation>列出專案檔案</translation>
    </message>
    <message>
        <source>Lists every source file tracked by the active Qt Creator project(s).</source>
        <translation>列出使用中 Qt Creator 專案所追蹤的每個原始檔案。</translation>
    </message>
    <message>
        <source>Find File</source>
        <translation>尋找檔案</translation>
    </message>
    <message>
        <source>Locates a file in the project by name or partial path. Returns paths only, without file content.</source>
        <translation>依名稱或部分路徑在專案中尋找檔案。僅回傳路徑,不含檔案內容。</translation>
    </message>
    <message>
        <source>Read File</source>
        <translation>讀取檔案</translation>
    </message>
    <message>
        <source>Reads the content of a file by absolute path or path relative to the project root.</source>
        <translation>依絕對路徑或相對於專案根目錄的路徑讀取檔案內容。</translation>
    </message>
    <message>
        <source>Search in Project</source>
        <translation>在專案中搜尋</translation>
    </message>
    <message>
        <source>Searches project files for text occurrences or C++ symbol definitions.</source>
        <translation>在專案檔案中搜尋文字出現位置或 C++ 符號定義。</translation>
    </message>
    <message>
        <source>Create New File</source>
        <translation>建立新檔案</translation>
    </message>
    <message>
        <source>Creates a new empty file at the given absolute path, making missing directories.</source>
        <translation>在指定的絕對路徑建立新的空白檔案,並建立缺少的目錄。</translation>
    </message>
    <message>
        <source>Edit File</source>
        <translation>編輯檔案</translation>
    </message>
    <message>
        <source>Applies find-and-replace edits to files. See &quot;Automatically apply file edits&quot; to control whether edits apply immediately or wait for review.</source>
        <translation>對檔案套用尋找與取代編輯。請參閱「自動套用檔案編輯」以控制編輯是立即套用或等待審閱。</translation>
    </message>
    <message>
        <source>Build Project</source>
        <translation>建置專案</translation>
    </message>
    <message>
        <source>Triggers a build of the active Qt Creator project and reports the result.</source>
        <translation>觸發目前使用中 Qt Creator 專案的建置並回報結果。</translation>
    </message>
    <message>
        <source>Get Issues List</source>
        <translation>取得問題清單</translation>
    </message>
    <message>
        <source>Reads compiler/clang diagnostics from Qt Creator&apos;s Issues panel.</source>
        <translation>從 Qt Creator 的「問題」面板讀取編譯器/clang 診斷。</translation>
    </message>
    <message>
        <source>Execute Terminal Command</source>
        <translation>執行終端機指令</translation>
    </message>
    <message>
        <source>Runs a command from the OS-specific allowed list below, in the project directory.</source>
        <translation>在專案目錄中執行下列作業系統專屬允許清單中的指令。</translation>
    </message>
    <message>
        <source>Todo</source>
        <translation>待辦事項</translation>
    </message>
    <message>
        <source>Lets the AI maintain a session-scoped todo list for multi-step workflows.</source>
        <translation>讓 AI 為多步驟工作流程維護工作階段範圍內的待辦清單。</translation>
    </message>
    <message>
        <source>Read Original History (Pre-Compression)</source>
        <translation>讀取原始記錄 (壓縮前)</translation>
    </message>
    <message>
        <source>Lets the AI read the original, full chat history from before the conversation was compressed into a summary. Useful when a detail is missing from the summary currently in context. Has no effect if the chat was never compressed.</source>
        <translation>讓 AI 讀取在對話被壓縮為摘要之前的原始、完整的聊天記錄。當目前上下文中的摘要缺少某個細節時很有用。若聊天從未被壓縮則無作用。</translation>
    </message>
    <message>
        <source>Load Skill</source>
        <translation>載入技能</translation>
    </message>
    <message>
        <source>Lets the AI load the full instructions of a skill on demand. The Available Skills catalog in the system prompt lists each skill; this tool pulls a skill&apos;s complete instructions into context when needed.</source>
        <translation>讓 AI 依需要載入技能的完整指示。系統提示詞中的「可用技能」目錄列出每個技能;此工具會在需要時將技能的完整指示拉入上下文。</translation>
    </message>
    <message>
        <source>Allowed Commands (Linux)</source>
        <translation>允許的指令 (Linux)</translation>
    </message>
    <message>
        <source>Comma-separated list of terminal commands that AI is allowed to execute on Linux. Example: git, ls, cat, grep, find, cmake</source>
        <translation>AI 在 Linux 上允許執行的終端機指令清單,以逗號分隔。範例:git, ls, cat, grep, find, cmake</translation>
    </message>
    <message>
        <source>Allowed Commands (macOS)</source>
        <translation>允許的指令 (macOS)</translation>
    </message>
    <message>
        <source>Comma-separated list of terminal commands that AI is allowed to execute on macOS. Example: git, ls, cat, grep, find, cmake</source>
        <translation>AI 在 macOS 上允許執行的終端機指令清單,以逗號分隔。範例:git, ls, cat, grep, find, cmake</translation>
    </message>
    <message>
        <source>Allowed Commands (Windows)</source>
        <translation>允許的指令 (Windows)</translation>
    </message>
    <message>
        <source>Comma-separated list of terminal commands that AI is allowed to execute on Windows. Example: git, dir, type, findstr, where, cmake</source>
        <translation>AI 在 Windows 上允許執行的終端機指令清單,以逗號分隔。範例:git, dir, type, findstr, where, cmake</translation>
    </message>
    <message>
        <source>Command Timeout (seconds)</source>
        <translation>指令逾時 (秒)</translation>
    </message>
    <message>
        <source>Maximum time in seconds to wait for a terminal command to complete. Increase for long-running commands like builds.</source>
        <translation>等待終端機指令完成的最長時間 (秒)。對於長時間執行的指令 (如建置) 請增加。</translation>
    </message>
    <message>
        <source>Tool Settings</source>
        <translation>工具設定</translation>
    </message>
    <message>
        <source>Skills</source>
        <translation>技能</translation>
    </message>
    <message>
        <source>Enable skills</source>
        <translation>啟用技能</translation>
    </message>
    <message>
        <source>Discover Agent Skills from the configured skill directories and expose them to the chat assistant. Each skill is a folder containing a SKILL.md file.</source>
        <translation>從設定的技能目錄探索代理技能,並提供給聊天助理使用。每個技能都是一個包含 SKILL.md 檔案的資料夾。</translation>
    </message>
    <message>
        <source>Global skill directories:</source>
        <translation>全域技能目錄:</translation>
    </message>
    <message>
        <source>Absolute paths scanned for skills, one per line. Each path is a directory whose subfolders contain SKILL.md files. A leading ~ expands to your home directory. Lets QodeAssist pick up skills shared with other agents (e.g. ~/.claude/skills).</source>
        <translation>用於掃描技能的絕對路徑,每行一個。每個路徑都是一個目錄,其子資料夾包含 SKILL.md 檔案。開頭的 ~ 會展開為您的家目錄。讓 QodeAssist 可以擷取與其他代理共用的技能 (例如 ~/.claude/skills)。</translation>
    </message>
    <message>
        <source>No skills discovered.</source>
        <translation>未探索到技能。</translation>
    </message>
    <message>
        <source>Skill Directories</source>
        <translation>技能目錄</translation>
    </message>
    <message>
        <source>Discovered global skills:</source>
        <translation>已探索到的全域技能:</translation>
    </message>
    <message>
        <source>MCP</source>
        <translation>MCP</translation>
    </message>
    <message>
        <source>Enable MCP server</source>
        <translation>啟用 MCP 伺服器</translation>
    </message>
    <message>
        <source>Expose QodeAssist tools to external MCP clients over HTTP. Which tools are visible is controlled on the client side.</source>
        <translation>透過 HTTP 將 QodeAssist 工具提供給外部 MCP 用戶端。哪些工具可見由用戶端控制。</translation>
    </message>
    <message>
        <source>Server port</source>
        <translation>伺服器連接埠</translation>
    </message>
    <message>
        <source>TCP port the MCP server listens on (localhost only). Requires restart of the server after change.</source>
        <translation>MCP 伺服器監聽的 TCP 連接埠 (僅限 localhost)。變更後需重新啟動伺服器。</translation>
    </message>
    <message>
        <source>Connect to external MCP servers</source>
        <translation>連線至外部 MCP 伺服器</translation>
    </message>
    <message>
        <source>Connect to MCP servers listed in mcp-server.json and expose their tools to chat/quick-refactor/code-completion. Toggling this off disconnects all currently running MCP client sessions.</source>
        <translation>連線至 mcp-server.json 中列出的 MCP 伺服器,並將其工具提供給聊天/快速重構/程式碼補全。停用此選項會中斷所有目前執行中的 MCP 用戶端工作階段。</translation>
    </message>
    <message>
        <source>Extra PATH for stdio servers</source>
        <translation>stdio 伺服器的額外 PATH</translation>
    </message>
    <message>
        <source>Directories to prepend to PATH when launching stdio MCP servers. Useful when Qt Creator is started from the dock and doesn&apos;t see Homebrew, nvm, uv, etc. Separate multiple entries with &apos;%1&apos;. Per-server &apos;env&apos; overrides in mcp-server.json still win.</source>
        <translation>啟動 stdio MCP 伺服器時要前置到 PATH 的目錄。當 Qt Creator 從 Dock 啟動而看不到 Homebrew、nvm、uv 等工具時很有用。使用 &apos;%1&apos; 分隔多個項目。mcp-server.json 中個別伺服器的 &apos;env&apos; 覆寫仍會優先。</translation>
    </message>
    <message>
        <source>How to connect...</source>
        <translation>如何連線...</translation>
    </message>
    <message>
        <source>Server</source>
        <translation>伺服器</translation>
    </message>
    <message>
        <source>Clients</source>
        <translation>用戶端</translation>
    </message>
    <message>
        <source>Connect to QodeAssist MCP</source>
        <translation>連線至 QodeAssist MCP</translation>
    </message>
    <message>
        <source>Server URL: &lt;code&gt;%1&lt;/code&gt;. If your MCP client speaks HTTP/SSE natively, use the &lt;b&gt;Direct&lt;/b&gt; tab. If it only speaks stdio (e.g. Claude Desktop), use the &lt;b&gt;Bridge&lt;/b&gt; tab.</source>
        <translation>伺服器 URL:&lt;code&gt;%1&lt;/code&gt;。若您的 MCP 用戶端原生支援 HTTP/SSE,請使用 &lt;b&gt;Direct&lt;/b&gt; 索引標籤。若僅支援 stdio (例如 Claude Desktop),請使用 &lt;b&gt;Bridge&lt;/b&gt; 索引標籤。</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>&lt;b&gt;Claude Code&lt;/b&gt; (CLI): run once —</source>
        <translation>&lt;b&gt;Claude Code&lt;/b&gt; (CLI):執行一次 —</translation>
    </message>
    <message>
        <source>&lt;b&gt;VS Code&lt;/b&gt;: save as &lt;code&gt;.vscode/mcp.json&lt;/code&gt; in the workspace:</source>
        <translation>&lt;b&gt;VS Code&lt;/b&gt;:在工作區中儲存為 &lt;code&gt;.vscode/mcp.json&lt;/code&gt;:</translation>
    </message>
    <message>
        <source>Any other client that reads an &lt;code&gt;mcpServers&lt;/code&gt; JSON block:</source>
        <translation>讀取 &lt;code&gt;mcpServers&lt;/code&gt; JSON 區塊的任何其他用戶端:</translation>
    </message>
    <message>
        <source>Direct (HTTP/SSE)</source>
        <translation>Direct (HTTP/SSE)</translation>
    </message>
    <message>
        <source>&lt;b&gt;1.&lt;/b&gt; Download &lt;code&gt;mcp-bridge&lt;/code&gt; for your OS from &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;.</source>
        <translation>&lt;b&gt;1.&lt;/b&gt; 從 &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt; 下載適用於您作業系統的 &lt;code&gt;mcp-bridge&lt;/code&gt;。</translation>
    </message>
    <message>
        <source>&lt;b&gt;2.&lt;/b&gt; Save the following as &lt;code&gt;mcp-bridge.json&lt;/code&gt;:</source>
        <translation>&lt;b&gt;2.&lt;/b&gt; 將下列內容儲存為 &lt;code&gt;mcp-bridge.json&lt;/code&gt;:</translation>
    </message>
    <message>
        <source>&lt;b&gt;3.&lt;/b&gt; Point the stdio-only client at the bridge. Example for &lt;code&gt;claude_desktop_config.json&lt;/code&gt;:</source>
        <translation>&lt;b&gt;3.&lt;/b&gt; 將僅支援 stdio 的用戶端指向橋接器。&lt;code&gt;claude_desktop_config.json&lt;/code&gt; 的範例:</translation>
    </message>
    <message>
        <source>Bridge (stdio)</source>
        <translation>Bridge (stdio)</translation>
    </message>
    <message>
        <source>Chat History Path:</source>
        <translation>聊天記錄路徑:</translation>
    </message>
    <message>
        <source>Skill directories:</source>
        <translation>技能目錄:</translation>
    </message>
    <message>
        <source>Project-relative subdirectories scanned for Agent Skills, one per line. Resolved against the project root. These take priority over the global skill directories when a skill name appears in both.</source>
        <translation>用於掃描代理技能的專案相對子目錄,每行一個。會相對於專案根目錄解析。當技能名稱在兩者中都出現時,這些目錄的優先順序高於全域技能目錄。</translation>
    </message>
    <message>
        <source>Discovered project skills:</source>
        <translation>已探索到的專案技能:</translation>
    </message>
    <message>
        <source>QodeAssist</source>
        <translation>QodeAssist</translation>
    </message>
    <message>
        <source>Provider Settings</source>
        <translation>提供者設定</translation>
    </message>
    <message>
        <source>OpenRouter API Key:</source>
        <translation>OpenRouter API 金鑰:</translation>
    </message>
    <message>
        <source>Enter your API key here</source>
        <translation>在此輸入您的 API 金鑰</translation>
    </message>
    <message>
        <source>OpenAI Compatible API Key:</source>
        <translation>OpenAI 相容 API 金鑰:</translation>
    </message>
    <message>
        <source>Claude API Key:</source>
        <translation>Claude API 金鑰:</translation>
    </message>
    <message>
        <source>Enable prompt caching</source>
        <translation>啟用提示詞快取</translation>
    </message>
    <message>
        <source>Marks the system prompt, tool definitions, and stable chat history with cache_control so Anthropic caches the request prefix (5-minute TTL). Reduces cost and latency on repeated turns.</source>
        <translation>為系統提示詞、工具定義及穩定的聊天記錄標記 cache_control,使 Anthropic 快取請求前置部分 (5 分鐘 TTL)。減少重複輪次的成本與延遲。</translation>
    </message>
    <message>
        <source>Use 1h cache TTL (beta)</source>
        <translation>使用 1 小時快取 TTL (beta)</translation>
    </message>
    <message>
        <source>Requests Anthropic&apos;s 1-hour cache TTL instead of the default 5 minutes. Sends the extended-cache-ttl-2025-04-11 beta header.</source>
        <translation>要求 Anthropic 使用 1 小時快取 TTL 而非預設的 5 分鐘。傳送 extended-cache-ttl-2025-04-11 beta 標頭。</translation>
    </message>
    <message>
        <source>OpenAI API Key:</source>
        <translation>OpenAI API 金鑰:</translation>
    </message>
    <message>
        <source>Mistral AI API Key:</source>
        <translation>Mistral AI API 金鑰:</translation>
    </message>
    <message>
        <source>Codestral API Key:</source>
        <translation>Codestral API 金鑰:</translation>
    </message>
    <message>
        <source>Google AI API Key:</source>
        <translation>Google AI API 金鑰:</translation>
    </message>
    <message>
        <source>Ollama(Bearer) API Key:</source>
        <translation>Ollama(Bearer) API 金鑰:</translation>
    </message>
    <message>
        <source>llama.cpp API Key:</source>
        <translation>llama.cpp API 金鑰:</translation>
    </message>
    <message>
        <source>Qwen API Key:</source>
        <translation>Qwen API 金鑰:</translation>
    </message>
    <message>
        <source>DeepSeek API Key:</source>
        <translation>DeepSeek API 金鑰:</translation>
    </message>
    <message>
        <source>OpenRouter Settings</source>
        <translation>OpenRouter 設定</translation>
    </message>
    <message>
        <source>OpenAI Settings</source>
        <translation>OpenAI 設定</translation>
    </message>
    <message>
        <source>OpenAI Compatible Settings</source>
        <translation>OpenAI 相容設定</translation>
    </message>
    <message>
        <source>Claude Settings</source>
        <translation>Claude 設定</translation>
    </message>
    <message>
        <source>Mistral AI Settings</source>
        <translation>Mistral AI 設定</translation>
    </message>
    <message>
        <source>Google AI Settings</source>
        <translation>Google AI 設定</translation>
    </message>
    <message>
        <source>llama.cpp Settings</source>
        <translation>llama.cpp 設定</translation>
    </message>
    <message>
        <source>Qwen (Alibaba) Settings</source>
        <translation>Qwen (Alibaba) 設定</translation>
    </message>
    <message>
        <source>DeepSeek Settings</source>
        <translation>DeepSeek 設定</translation>
    </message>
    <message>
        <source>Agent roles define different system prompts for specific tasks.</source>
        <translation>代理角色為特定任務定義不同的系統提示詞。</translation>
    </message>
    <message>
        <source>Open Roles Folder...</source>
        <translation>開啟角色資料夾...</translation>
    </message>
    <message>
        <source>Add...</source>
        <translation>新增...</translation>
    </message>
    <message>
        <source>Edit...</source>
        <translation>編輯...</translation>
    </message>
    <message>
        <source>Duplicate...</source>
        <translation>複製...</translation>
    </message>
    <message>
        <source>(Built-in role)</source>
        <translation>(內建角色)</translation>
    </message>
    <message>
        <source>Role Already Exists</source>
        <translation>角色已存在</translation>
    </message>
    <message>
        <source>A role with ID &apos;%1&apos; already exists. Please use a different ID.</source>
        <translation>ID 為 &apos;%1&apos; 的角色已存在。請使用不同的 ID。</translation>
    </message>
    <message>
        <source>Error</source>
        <translation>錯誤</translation>
    </message>
    <message>
        <source>Failed to save role &apos;%1&apos;.</source>
        <translation>儲存角色 &apos;%1&apos; 失敗。</translation>
    </message>
    <message>
        <source>Cannot Edit Built-in Role</source>
        <translation>無法編輯內建角色</translation>
    </message>
    <message>
        <source>Built-in roles cannot be edited. You can duplicate this role and modify the copy.</source>
        <translation>無法編輯內建角色。您可以複製此角色並修改副本。</translation>
    </message>
    <message>
        <source>Failed to update role &apos;%1&apos;.</source>
        <translation>更新角色 &apos;%1&apos; 失敗。</translation>
    </message>
    <message>
        <source>Failed to duplicate role.</source>
        <translation>複製角色失敗。</translation>
    </message>
    <message>
        <source>Cannot Delete Built-in Role</source>
        <translation>無法刪除內建角色</translation>
    </message>
    <message>
        <source>Built-in roles cannot be deleted.</source>
        <translation>無法刪除內建角色。</translation>
    </message>
    <message>
        <source>Delete Role</source>
        <translation>刪除角色</translation>
    </message>
    <message>
        <source>Are you sure you want to delete the role &apos;%1&apos;?</source>
        <translation>您確定要刪除角色 &apos;%1&apos; 嗎?</translation>
    </message>
    <message>
        <source>Failed to delete role &apos;%1&apos;.</source>
        <translation>刪除角色 &apos;%1&apos; 失敗。</translation>
    </message>
    <message>
        <source>Generate QodeAssist suggestion at the current cursor position.</source>
        <translation>在目前游標位置產生 QodeAssist 建議。</translation>
    </message>
    <message>
        <source>Request QodeAssist Suggestion</source>
        <translation>請求 QodeAssist 建議</translation>
    </message>
    <message>
        <source>Refactor code using QodeAssist</source>
        <translation>使用 QodeAssist 重構程式碼</translation>
    </message>
    <message>
        <source>Quick Refactor with QodeAssist</source>
        <translation>使用 QodeAssist 快速重構</translation>
    </message>
    <message>
        <source>Open QodeAssist Chat as an editor tab</source>
        <translation>將 QodeAssist 聊天以編輯器索引標籤開啟</translation>
    </message>
    <message>
        <source>Show QodeAssist Chat</source>
        <translation>顯示 QodeAssist 聊天</translation>
    </message>
    <message>
        <source>Close QodeAssist Chat</source>
        <translation>關閉 QodeAssist 聊天</translation>
    </message>
    <message>
        <source>Open QodeAssist Chat in Separate Window</source>
        <translation>在獨立視窗中開啟 QodeAssist 聊天</translation>
    </message>
    <message>
        <source>Open the QodeAssist chat in a separate window</source>
        <translation>在獨立視窗中開啟 QodeAssist 聊天</translation>
    </message>
    <message>
        <source>New QodeAssist Chat</source>
        <translation>新 QodeAssist 聊天</translation>
    </message>
    <message>
        <source>Open a fresh chat in a new editor tab</source>
        <translation>在新的編輯器索引標籤中開啟全新聊天</translation>
    </message>
    <message>
        <source>Send QodeAssist Chat Message</source>
        <translation>傳送 QodeAssist 聊天訊息</translation>
    </message>
    <message>
        <source>Send the current message to the LLM</source>
        <translation>將目前訊息傳送至 LLM</translation>
    </message>
    <message>
        <source>Clear QodeAssist Chat Session</source>
        <translation>清除 QodeAssist 聊天工作階段</translation>
    </message>
    <message>
        <source>Clear the current chat session</source>
        <translation>清除目前聊天工作階段</translation>
    </message>
    <message>
        <source>QodeAssist Chat</source>
        <translation>QodeAssist 聊天</translation>
    </message>
    <message>
        <source>Chat in Bottom Panel</source>
        <translation>底部面板中的聊天</translation>
    </message>
    <message>
        <source>Chat in Sidebar</source>
        <translation>側邊欄中的聊天</translation>
    </message>
    <message>
        <source>Open Chat in Editor</source>
        <translation>在編輯器中開啟聊天</translation>
    </message>
    <message>
        <source>Open Chat in Separate Window</source>
        <translation>在獨立視窗中開啟聊天</translation>
    </message>
    <message>
        <source>Select LLM Provider</source>
        <translation>選擇 LLM 提供者</translation>
    </message>
    <message>
        <source>Providers:</source>
        <translation>提供者:</translation>
    </message>
    <message>
        <source>Select LLM Model</source>
        <translation>選擇 LLM 模型</translation>
    </message>
    <message>
        <source>Models:</source>
        <translation>模型:</translation>
    </message>
    <message>
        <source>Select Template</source>
        <translation>選擇範本</translation>
    </message>
    <message>
        <source>Templates:</source>
        <translation>範本:</translation>
    </message>
    <message>
        <source>Switch AI configuration</source>
        <translation>切換 AI 設定</translation>
    </message>
    <message>
        <source>Enable/Disable AI Tools</source>
        <translation>啟用/停用 AI 工具</translation>
    </message>
    <message>
        <source>Enable/Disable Thinking Mode</source>
        <translation>啟用/停用思考模式</translation>
    </message>
    <message>
        <source>Open Quick Refactor Settings</source>
        <translation>開啟快速重構設定</translation>
    </message>
    <message>
        <source>Your Current Instruction:</source>
        <translation>您目前的指示:</translation>
    </message>
    <message>
        <source>Type or edit your instruction...</source>
        <translation>輸入或編輯您的指示...</translation>
    </message>
    <message>
        <source>Or Load saved:</source>
        <translation>或載入已儲存的:</translation>
    </message>
    <message>
        <source>Search saved instructions...</source>
        <translation>搜尋已儲存的指示...</translation>
    </message>
    <message>
        <source>Add Custom Instruction</source>
        <translation>新增自訂指示</translation>
    </message>
    <message>
        <source>Edit Custom Instruction</source>
        <translation>編輯自訂指示</translation>
    </message>
    <message>
        <source>Delete Custom Instruction</source>
        <translation>刪除自訂指示</translation>
    </message>
    <message>
        <source>Open Instructions Folder</source>
        <translation>開啟指示資料夾</translation>
    </message>
    <message>
        <source>Repeat Last Instructions</source>
        <translation>重複上次的指示</translation>
    </message>
    <message>
        <source>Improve Current Code</source>
        <translation>改善目前的程式碼</translation>
    </message>
    <message>
        <source>Suggest Alternative Solution</source>
        <translation>建議替代解決方案</translation>
    </message>
    <message>
        <source>Improve the selected code by enhancing readability, efficiency, and maintainability. Follow best practices for C++/Qt and fix any potential issues.</source>
        <translation>藉由提升可讀性、效率與可維護性來改善所選的程式碼。遵循 C++/Qt 的最佳實踐並修正任何潛在問題。</translation>
    </message>
    <message>
        <source>Suggest an alternative implementation approach for the selected code. Provide a different solution that might be cleaner, more efficient, or uses different Qt/C++ patterns or idioms.</source>
        <translation>為所選的程式碼建議替代的實作方式。提供可能更簡潔、更有效率,或使用不同 Qt/C++ 樣式或慣用法的不同解決方案。</translation>
    </message>
    <message>
        <source>Failed to save custom instruction. Check logs for details.</source>
        <translation>儲存自訂指示失敗。請查看記錄檔以取得詳細資訊。</translation>
    </message>
    <message>
        <source>No Instruction Selected</source>
        <translation>未選擇指示</translation>
    </message>
    <message>
        <source>Please select an instruction to edit.</source>
        <translation>請選擇要編輯的指示。</translation>
    </message>
    <message>
        <source>Failed to update custom instruction. Check logs for details.</source>
        <translation>更新自訂指示失敗。請查看記錄檔以取得詳細資訊。</translation>
    </message>
    <message>
        <source>Please select an instruction to delete.</source>
        <translation>請選擇要刪除的指示。</translation>
    </message>
    <message>
        <source>Confirm Deletion</source>
        <translation>確認刪除</translation>
    </message>
    <message>
        <source>Are you sure you want to delete the instruction &apos;%1&apos;?</source>
        <translation>您確定要刪除指示 &apos;%1&apos; 嗎?</translation>
    </message>
    <message>
        <source>Failed to delete custom instruction. Check logs for details.</source>
        <translation>刪除自訂指示失敗。請查看記錄檔以取得詳細資訊。</translation>
    </message>
    <message>
        <source>Current</source>
        <translation>目前</translation>
    </message>
    <message>
        <source>Current (%1)</source>
        <translation>目前 (%1)</translation>
    </message>
    <message>
        <source>No Instruction</source>
        <translation>無指示</translation>
    </message>
    <message>
        <source>Please type an instruction or select a saved one.</source>
        <translation>請輸入指示或選擇已儲存的指示。</translation>
    </message>
    <message>
        <source>Enter instruction name...</source>
        <translation>輸入指示名稱...</translation>
    </message>
    <message>
        <source>Name:</source>
        <translation>名稱:</translation>
    </message>
    <message>
        <source>Instruction Body:</source>
        <translation>指示內容:</translation>
    </message>
    <message>
        <source>Enter the refactoring instruction that will be sent to the LLM...</source>
        <translation>輸入將傳送至 LLM 的重構指示...</translation>
    </message>
    <message>
        <source>Set as default instruction</source>
        <translation>設為預設指示</translation>
    </message>
    <message>
        <source>This instruction will be automatically selected when opening Quick Refactor dialog</source>
        <translation>開啟快速重構對話方塊時將自動選擇此指示</translation>
    </message>
    <message>
        <source>Invalid Input</source>
        <translation>輸入無效</translation>
    </message>
    <message>
        <source>Instruction name cannot be empty.</source>
        <translation>指示名稱不可為空。</translation>
    </message>
    <message>
        <source>Instruction body cannot be empty.</source>
        <translation>指示內容不可為空。</translation>
    </message>
</context>
<context>
    <name>RootItem</name>
    <message>
        <source>Compressing chat…</source>
        <translation>壓縮聊天中…</translation>
    </message>
    <message>
        <source>next ~%1  ·  session ↑%2 ↓%3 ↻%4</source>
        <translation>下次 ~%1  ·  工作階段 ↑%2 ↓%3 ↻%4</translation>
    </message>
    <message>
        <source>next ~%1  ·  session ↑%2 ↓%3</source>
        <translation>下次 ~%1  ·  工作階段 ↑%2 ↓%3</translation>
    </message>
    <message>
        <source>next request (estimate)  ·  session prompt ↑ / completion ↓ / cached ↻ (provider cache hits)</source>
        <translation>下次請求 (估計)  ·  工作階段提示詞 ↑ / 補全 ↓ / 已快取 ↻ (提供者快取命中)</translation>
    </message>
    <message>
        <source>next request (estimate)  ·  session prompt ↑ / completion ↓</source>
        <translation>下次請求 (估計)  ·  工作階段提示詞 ↑ / 補全 ↓</translation>
    </message>
    <message>
        <source>Сhat name: %1</source>
        <translation>聊天名稱:%1</translation>
    </message>
    <message>
        <source>Move this chat to an editor tab</source>
        <translation>將此聊天移至編輯器索引標籤</translation>
    </message>
    <message>
        <source>Move this chat to a separate window</source>
        <translation>將此聊天移至獨立視窗</translation>
    </message>
    <message>
        <source>Type your message here... (%1 to send)</source>
        <translation>在此輸入您的訊息... (%1 傳送)</translation>
    </message>
    <message>
        <source>Cut</source>
        <translation>剪下</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Paste</source>
        <translation>貼上</translation>
    </message>
    <message>
        <source>Select All</source>
        <translation>全選</translation>
    </message>
    <message>
        <source>Clear</source>
        <translation>清除</translation>
    </message>
    <message>
        <source>Send</source>
        <translation>傳送</translation>
    </message>
    <message>
        <source>Stop</source>
        <translation>停止</translation>
    </message>
    <message>
        <source>Send message to LLM %1</source>
        <translation>傳送訊息至 LLM %1</translation>
    </message>
    <message>
        <source>Compress Chat</source>
        <translation>壓縮聊天</translation>
    </message>
    <message>
        <source>Create a summarized copy of this chat?

The summary will be generated by LLM and saved as a new chat file.</source>
        <translation>建立此聊天的摘要副本?

摘要將由 LLM 產生並儲存為新的聊天檔案。</translation>
    </message>
    <message>
        <source>Copied</source>
        <translation>已複製</translation>
    </message>
</context>
<context>
    <name>SplitDropZone</name>
    <message numerus="yes">
        <source>%n file(s) to drop</source>
        <translation>
            <numerusform>要放下 %n 個檔案</numerusform>
        </translation>
    </message>
    <message>
        <source>Attach</source>
        <translation>附加</translation>
    </message>
    <message>
        <source>Images &amp; Text Files</source>
        <translation>圖片與文字檔案</translation>
    </message>
    <message>
        <source>(for one-time use)</source>
        <translation>(僅供一次性使用)</translation>
    </message>
    <message>
        <source>LINK</source>
        <translation>連結</translation>
    </message>
    <message>
        <source>Text Files</source>
        <translation>文字檔案</translation>
    </message>
    <message>
        <source>(added to context)</source>
        <translation>(已加入上下文)</translation>
    </message>
</context>
<context>
    <name>TextBlock</name>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Select All</source>
        <translation>全選</translation>
    </message>
</context>
<context>
    <name>ThinkingBlock</name>
    <message>
        <source>Thinking (Redacted)</source>
        <translation>思考 (已遮蔽)</translation>
    </message>
    <message>
        <source>Thinking</source>
        <translation>思考</translation>
    </message>
    <message>
        <source>Thinking content was redacted by safety systems</source>
        <translation>思考內容已被安全系統遮蔽</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>收合</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>展開</translation>
    </message>
</context>
<context>
    <name>ToolBlock</name>
    <message>
        <source>Tool: %1</source>
        <translation>工具:%1</translation>
    </message>
    <message>
        <source>Copy</source>
        <translation>複製</translation>
    </message>
    <message>
        <source>Select All</source>
        <translation>全選</translation>
    </message>
    <message>
        <source>Collapse</source>
        <translation>收合</translation>
    </message>
    <message>
        <source>Expand</source>
        <translation>展開</translation>
    </message>
</context>
<context>
    <name>TopBar</name>
    <message>
        <source>Unpin chat window</source>
        <translation>取消釘選聊天視窗</translation>
    </message>
    <message>
        <source>Pin chat window to the top</source>
        <translation>將聊天視窗釘選於頂端</translation>
    </message>
    <message>
        <source>Clean chat</source>
        <translation>清空聊天</translation>
    </message>
    <message>
        <source>Open new chat in a new tab</source>
        <translation>在新的索引標籤中開啟新聊天</translation>
    </message>
    <message>
        <source>Switch saved AI configuration</source>
        <translation>切換已儲存的 AI 設定</translation>
    </message>
    <message>
        <source>Switch agent role (different system prompts)</source>
        <translation>切換代理角色 (不同的系統提示詞)</translation>
    </message>
    <message>
        <source>Tools are disabled in General Settings</source>
        <translation>一般設定中已停用工具</translation>
    </message>
    <message>
        <source>Tools enabled: AI can use tools to read files, search project, and build code</source>
        <translation>工具已啟用:AI 可使用工具讀取檔案、搜尋專案及建置程式碼</translation>
    </message>
    <message>
        <source>Tools disabled: Simple conversation without tool access</source>
        <translation>工具已停用:無工具存取的簡單對話</translation>
    </message>
    <message>
        <source>Thinking Mode enabled (Check model list support it)</source>
        <translation>思考模式已啟用 (請查看模型清單是否支援)</translation>
    </message>
    <message>
        <source>Thinking Mode disabled</source>
        <translation>思考模式已停用</translation>
    </message>
    <message>
        <source>Thinking Mode is not available for this provider</source>
        <translation>此提供者無法使用思考模式</translation>
    </message>
    <message>
        <source>Open Chat Assistant Settings</source>
        <translation>開啟聊天助理設定</translation>
    </message>
    <message>
        <source>Save chat to *.json file</source>
        <translation>將聊天儲存為 *.json 檔案</translation>
    </message>
    <message>
        <source>Load chat from *.json file</source>
        <translation>從 *.json 檔案載入聊天</translation>
    </message>
    <message>
        <source>Show in system</source>
        <translation>在系統中顯示</translation>
    </message>
    <message>
        <source>View chat context (system prompt, role, rules)</source>
        <translation>檢視聊天上下文 (系統提示詞、角色、規則)</translation>
    </message>
    <message>
        <source>Current amount tokens in chat and LLM limit threshold</source>
        <translation>聊天中目前的 Token 數量與 LLM 限制門檻</translation>
    </message>
</context>
</TS>
