feat(tasks-ui): readability pass, height-budget fix and leftover sweep
The native port is finished off with the readability work the earlier rounds left open, plus the cleanup of everything the shadcn era or the older canvas left behind. - Geometry: node height is now composed from named parts (chrome, two title lines, meta row) and per-node extras, so a teammate card that carries a task line no longer gets clipped by the old fixed 68px budget; the layout spec follows the new model and GRAPH_ROW_STRIDE stays exported for it. - Readability: row rhythm (28-32px), three ink levels for title/meta/owner, truncation with title hints, current-row and hover expressed as an accent bar plus a hover fill (no shadows), phase frames and edges back on the l1/l2 hairlines, control cluster uniformly 28px, drawer durations on tabular figures, kill action revealed on hover/focus without shifting the row, no horizontal overflow at 360px. - Task window: the markdown body is pulled onto the page scale (12px body, 12/13px headings, tightened list indent and paragraph spacing) while the shared MarkdownText/markdownTextProps contract is untouched. - Cleanup: dead stylesheet rules, unused TSX exports and helpers, stale comments that still described the retired Variant-D canvas, zero-reference i18n keys across the dictionaries, and the Tailwind/shadcn/Variant-D narrative in the design doc, AGENTS.md and the plugin guide (kept as one short "why it was rolled back" section). Verified here: typecheck and lint clean; 133 files / 1413 tests; build with no radix-ui or --tw- strings in lib/client.js (988.9 KiB); the 70-assertion real-browser contract at 70/70 with the 20 reference screenshots regenerated; mount e2e 7/7.
This commit is contained in:
@@ -78,29 +78,16 @@ export const ja: Record<string, string> = {
|
||||
openWithSettingsRemove: '削除',
|
||||
openWithSettingsInvalidHint: '名前またはテンプレート({path} を含み scheme:// で始まる必要あり)が未入力の編集者はメニューに表示されません',
|
||||
newTab: '新しいタブ',
|
||||
openExplorer: 'エクスプローラー',
|
||||
brokenSymlink: '無効なシンボリックリンク',
|
||||
openGit: 'Git パネル',
|
||||
newTerminal: '新しいターミナル',
|
||||
terminalLimit: 'ターミナル数が上限に達しました (3)',
|
||||
close: '閉じる',
|
||||
closeOtherTabs: '他のタブを閉じる',
|
||||
closeLeftTabs: '左のタブを閉じる',
|
||||
closeRightTabs: '右のタブを閉じる',
|
||||
floatDropHint: '離すとフリーウィンドウで開きます',
|
||||
dockToSidebar: 'サイドバーへ戻す',
|
||||
pinTerminal: 'ターミナルを固定',
|
||||
pinAgentTerminal: 'Agent ターミナルを固定',
|
||||
pinToWorkspace: 'ワークスペースに固定',
|
||||
pinToGlobal: 'グローバルに固定',
|
||||
unpinTerminal: '固定を解除',
|
||||
pinnedTerminalTooltip: '{kind} · {scope} · {cwd}',
|
||||
pinnedTerminalKindUi: 'UI ターミナル',
|
||||
pinnedTerminalKindAgent: 'Agent ターミナル',
|
||||
pinnedTerminalScopeWorkspace: 'ワークスペースに固定',
|
||||
pinnedTerminalScopeGlobal: 'グローバルに固定',
|
||||
pinnedRailLabel: '固定されたターミナル',
|
||||
closePinnedTerminal: 'ターミナルを閉じる',
|
||||
collapseBottomPanel: '下パネルを折りたたむ',
|
||||
expandBottomPanel: '下パネルを展開',
|
||||
terminalError: 'ターミナル接続に失敗',
|
||||
@@ -132,10 +119,6 @@ export const ja: Record<string, string> = {
|
||||
loading: '読み込み中…',
|
||||
error: '読み込みに失敗',
|
||||
retry: '再試行',
|
||||
splitLeft: '左に分割',
|
||||
splitRight: '右に分割',
|
||||
splitUp: '上に分割',
|
||||
splitDown: '下に分割',
|
||||
notRepo: 'このディレクトリは git リポジトリではありません',
|
||||
noChanges: '変更はありません',
|
||||
statusTruncated: '変更が多すぎるため、最初の 2000 件のみ表示しています',
|
||||
@@ -145,7 +128,6 @@ export const ja: Record<string, string> = {
|
||||
unstageAll: 'すべてステージ解除',
|
||||
commitPlaceholder: 'コミットメッセージ (Ctrl+Enter)',
|
||||
commit: 'コミット',
|
||||
commitError: 'コミット失敗',
|
||||
branch: 'ブランチ',
|
||||
worktree: 'ワークツリー',
|
||||
checkoutError: 'ブランチ切り替えに失敗',
|
||||
@@ -169,7 +151,6 @@ export const ja: Record<string, string> = {
|
||||
diffDeleted: '削除',
|
||||
diffRenamed: '名前変更',
|
||||
diffExpand: '残り {count} 行を展開',
|
||||
diffCollapse: '折りたたむ',
|
||||
discard: '変更を破棄',
|
||||
discardTitle: '変更を破棄',
|
||||
discardDesc: '「{path}」のワークツリー変更を破棄します(復元不可)。',
|
||||
@@ -190,18 +171,14 @@ export const ja: Record<string, string> = {
|
||||
loadMore: 'もっと読み込む',
|
||||
historyLoadError: '履歴の追加読み込みに失敗',
|
||||
produced: '今回の産物',
|
||||
producedOpen: 'サイドバーで開く',
|
||||
disconnected: 'ターミナル接続が切れました、再接続中…',
|
||||
exited: 'ターミナルプロセスが終了しました',
|
||||
noSession: 'サイドバーを使うには会話を選択してください',
|
||||
pluginNotLoaded: 'プラグイン未読み込み、タブは一時的に利用不可:',
|
||||
hiddenFiles: '隠しファイル',
|
||||
parent: '上位ディレクトリ',
|
||||
copied: 'コピーしました',
|
||||
copy: 'コピー',
|
||||
newFile: '新規ファイル',
|
||||
openEditor: 'エディターで開く',
|
||||
gitDetail: '変更詳細を表示',
|
||||
referenceFile: '@ファイル',
|
||||
addToConversation: '会話に追加',
|
||||
copyRelative: '相対パスをコピー',
|
||||
@@ -245,7 +222,6 @@ export const ja: Record<string, string> = {
|
||||
settingsSchemeCustomDesc: '完全に制御:カスタム CSS を注入(内置スタイルも上書き可)し、タイトルバーの下移動距離を指定',
|
||||
settingsSchemeDetectedSuffix: '検出済み',
|
||||
settingsCustomCssTitle: 'カスタム CSS',
|
||||
settingsCustomCssDesc: 'ページ末尾に追加されるスタイル(同優先度では後勝ち。JS 起点のインライン変数を上書きするには !important を使用)',
|
||||
settingsCustomCssPlaceholder: '/* 例:自描きタイトルバーのシェルに 36px を予約 */\nhtml[data-dsh-title-bar-height="36"] {\n --dsh-title-bar-strip: 36px !important;\n}',
|
||||
settingsSaveFailed: '保存に失敗',
|
||||
settingsConflict: '設定が別のウィンドウで変更されました、再試行してください',
|
||||
@@ -268,7 +244,6 @@ export const ja: Record<string, string> = {
|
||||
settingsFontFamilyPlaceholder: '"JetBrains Mono", monospace',
|
||||
settingsFontSizeTitle: 'ターミナルフォントサイズ',
|
||||
settingsFontSizeDesc: 'ターミナルのフォントサイズ (px、9–32、デフォルト 13)',
|
||||
settingsFontSizeSuffix: 'px',
|
||||
settingsShellTitle: 'シェルパス',
|
||||
settingsShellDesc: 'UI とモデルのターミナルが起動するシェル(絶対パス or 実行ファイル名)。空欄時は従来順で解決: yaml の config.shell → $SHELL / ログインシェル / Windows の powershell.exe。以降に開くターミナルに適用',
|
||||
settingsShellPlaceholder: '例: /bin/zsh(空欄で自動解決)',
|
||||
@@ -310,19 +285,14 @@ export const ja: Record<string, string> = {
|
||||
browserEmbedBlockedDesc: 'このサイトは X-Frame-Options / frame-ancestors で他ページ内での表示を禁止しているため、サイドバー内で読み込めません。ブラウザーで直接開いてください',
|
||||
browserEmbedAnyway: 'それでも読み込む',
|
||||
subagent: 'タスク管理',
|
||||
openSubagent: 'タスク管理',
|
||||
subagentMainAgent: 'メインエージェント',
|
||||
subagentEmpty: 'サブエージェントなし',
|
||||
subagentEmptyDesc: 'メインエージェントが派生したサブエージェントはここに表示されます',
|
||||
subagentRunning: '実行中',
|
||||
subagentInactive: 'アイドル',
|
||||
subagentModeOneShot: 'ワンショット',
|
||||
subagentModeContinuable: '継続可',
|
||||
subagentCount: '{count} 個のサブエージェント',
|
||||
subagentCountRunning: '{count} 個のサブエージェント ・ {running} 個実行中',
|
||||
subagentDiagCorrupt: 'ディレクトリ破損',
|
||||
subagentDiagUnsupported: '未サポートのエントリ',
|
||||
subagentDiagUnavailable: '利用不可',
|
||||
subagentThinking: '思考中…',
|
||||
sideChat: 'サイドチャット(beta)',
|
||||
sideChatNew: '新規スレッド',
|
||||
@@ -343,10 +313,7 @@ export const ja: Record<string, string> = {
|
||||
sideChatThink: '思考プロセス',
|
||||
sideChatInjection: 'コンテキスト注入済み',
|
||||
sideChatSend: '送信',
|
||||
sideChatCancel: '停止',
|
||||
sideChatCancelTitle: '現在のターンを中止(キューは保持)',
|
||||
sideChatClose: 'スレッドを閉じる',
|
||||
sideChatCloseTitle: 'スレッドの agent を解放(履歴は保持)',
|
||||
sideChatError: 'サイド会話エラー:{message}',
|
||||
sideChatTurnUsage: '入力 {input} tok · 出力 {output} tok',
|
||||
sideChatBlockCollapse: '折りたたむ',
|
||||
@@ -382,7 +349,6 @@ export const ja: Record<string, string> = {
|
||||
jobDurationMinutes: '{minutes} 分 {seconds} 秒',
|
||||
jobDurationHours: '{hours} 時間 {minutes} 分',
|
||||
jobViewOutput: '出力を表示',
|
||||
jobHideOutput: '出力を隠す',
|
||||
jobNoOutput: 'まだ出力なし',
|
||||
jobNotReadYet: 'モデルがこのタスクの出力を読み取るのを待機中(モデルが job_output を実行すると、出力がここに表示されます)',
|
||||
jobOutputTruncated: '出力が長すぎるため表示を切り詰めました',
|
||||
@@ -400,7 +366,6 @@ export const ja: Record<string, string> = {
|
||||
settingsViewModeGraphDesc: '階層ノードグラフ(ズーム・パン対応)',
|
||||
settingsViewModeTree: 'ツリー',
|
||||
settingsViewModeTreeDesc: '従来のインデントツリー(キーボード操作可)',
|
||||
tasksWorkflowMember: 'ワークフローメンバー',
|
||||
tasksFoldCompleted: '✓ {count} 件完了',
|
||||
tasksFoldExpand: '完了ノードを展開',
|
||||
tasksFoldCollapse: '完了ノードを折りたたむ',
|
||||
@@ -421,7 +386,6 @@ export const ja: Record<string, string> = {
|
||||
tasksStateError: 'エラー',
|
||||
teamBoard: 'チームタスクボード',
|
||||
teamChip: 'チーム {members} 名 · {tasks} タスク',
|
||||
teamMembers: 'メンバー',
|
||||
teamTasksEmpty: '共有タスクはまだありません',
|
||||
teamTaskCreate: 'タスクを作成',
|
||||
teamTaskSubject: '件名',
|
||||
|
||||
Reference in New Issue
Block a user