From 6e048c1cd3d4c68746277ae26e7435689a86cbf8 Mon Sep 17 00:00:00 2001 From: HIsheR Date: Mon, 26 Oct 2026 22:54:56 +0800 Subject: [PATCH] =?UTF-8?q?chore(backlog):=20=E8=AE=B0=E5=BD=95=20g270=20?= =?UTF-8?q?=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .ua/backlog.json | 9 +++++++++ .ua/iterations.log | 1 + 2 files changed, 10 insertions(+) diff --git a/.ua/backlog.json b/.ua/backlog.json index 5d3c989..f388048 100644 --- a/.ua/backlog.json +++ b/.ua/backlog.json @@ -2816,6 +2816,15 @@ "status": "done", "domain": "new", "notes": "对齐分三步:先剪公共前缀、再剪公共后缀、最后才 DP(dp[i][j] 从后往前填,回溯时按「删还是加」比较下一格长度),日常改两行只算中间几行,不会 2000×2000 全表;退化阈值用中间段乘积而不是总行数——总行数大但改动集中时仍然能逐行对齐。踩坑复现:用 bash 内联 node 生成 demo 里的 join(\n) 与嵌套引号,反斜杠被吞成真实换行,esbuild 报 Unterminated string literal,改用编辑器直接写入 + 双引号内层字符串" + }, + { + "id": "g270", + "title": "新增代码块组件 codeBlock", + "motivation": "演示页与文档站里到处是「一段代码 + 一个复制按钮」:此前靠 h(pre) 手拼,行号、标题、复制各写一遍,行号还容易被一起选进剪贴板。库里有 copyButton(复制)与 diffView(对比),缺的正是最常用的「单向展示」那一块——它该把行号与复制都收进同一个组件,顺手保证复制出来的是纯原文。", + "acceptance": "新增 codeBlock(props):code 原文渲染为等宽多行,行号列缺省显示(单行自动省略)、user-select:none 不进复制;标题行 title 优先于 lang,两者与 copyable 全关时整条头部省掉;maxHeight 限高后在框内滚动并纳入统一细条规则;复制走 copyButton 且直接读 props.code(不从 DOM 取文本,杜绝行号混入);onCopy 回调透传;样式只消费 --ua-* 令牌,禁止新增硬编码阴影 / 时长 / 字号;十处落点全同步,npm run check 全绿", + "status": "done", + "domain": "new", + "notes": "行号用 aria-hidden 而不是 role=presentation:读屏读代码时不该被「1 2 3」打断;空行渲染成一个空格撑住行高,否则连续空行会把代码块压扁。踩坑:Write 工具写文件时把行尾注释的 ***/ 后面粘了个 残片,tsc 直接报语法错——新建组件后必须先 build 再过其余门禁;demo 里的嵌套引号改用 .mjs 脚本写(Write 工具落盘不转义),比 bash 内联 heredoc 稳定" } ] } \ No newline at end of file diff --git a/.ua/iterations.log b/.ua/iterations.log index 747c1d9..9070ef3 100644 --- a/.ua/iterations.log +++ b/.ua/iterations.log @@ -314,3 +314,4 @@ {"ts":"2026-10-26T22:51:24+08:00","id":"g267","result":"done","commit":"cf44880","summary":"补 Windows 强制色高对比兜底:结构补真边框 + 选中态走 Highlight + 占位走 GrayText"} {"ts":"2026-10-26T22:52:36+08:00","id":"g268","result":"done","commit":"9380304","summary":"verify 增加孤儿演示反向校验:demo 里每个 section 必须被某组件 demo 认领"} {"ts":"2026-10-26T22:53:49+08:00","id":"g269","result":"done","commit":"368d47c","summary":"新增文本差异对比组件 diffView(78→79):剪前后缀 + LCS 对齐 + 双通道着色"} +{"ts":"2026-10-26T22:54:56+08:00","id":"g270","result":"done","commit":"b8f90b8","summary":"新增代码块组件 codeBlock(79→80):行号不进剪贴板 + 头部标题 + 一键复制"}