10 lines
2.9 KiB
Markdown
10 lines
2.9 KiB
Markdown
FAIL
|
||
|
||
../Ely-GPUI-Components/src/git/rows.rs:128 — `CMakeLists.txt` 先命中扩展名分支,随后因 `txt` 属于 PROSE 返回 None;131 行为它设置的 `#` 分支永远到不了,CMake 主文件的语法着色整体丢失。复现:旧内容为 `# return 42\n`,新内容追加 `value = 1\n`,分别以 `CMakeLists.txt` 和 `build.cmake` 打开 DiffViewer。前者的注释使用正文色,后者使用注释色;原生窗口的行内、并排布局均复现,同一注释区域分别相差 896、1792 个像素。证据:/tmp/R2.12-r2-language.log、/tmp/R2.12-r2-render.log。修复方向:先识别特殊文件名,再执行扩展名分类,并覆盖 `CMakeLists.txt` 的实际着色。
|
||
|
||
../Ely-GPUI-Components/src/git/rows.rs:145 — 文件类型只被转换成注释起始符,实际着色仍共用 forms/code.rs 的跨语言关键字与常量表,上一轮要求的语言着色修复仍有遗漏。复现:`script.py` 中的有效代码 `assert ready and True` 将 `assert`、`and` 着为 variable,将 `True` 着为 type;`config.toml` 中有效的裸键 `return = 42` 将 `return` 着为 keyword。定向探针记录了实际 HighlightStyle,原生窗口两种布局均显示对应错误颜色。证据:/tmp/R2.12-r2-language.log、/tmp/R2.12-r2-native.log。修复方向:将语言类型传到着色层,按该语言识别关键字、常量及配置键,并加入这些输入的颜色回归断言。
|
||
|
||
../Ely-GPUI-Components/src/forms/code.rs:69 — 注释判定只检查当前位置是否以起始符开头,遗漏 Shell 的词边界条件,将普通参数的后半段吞成注释。复现:`run.sh` 内容为 `echo foo#bar 42`;实际 Bash 输出 `foo#bar 42`,DiffViewer 却将 `#bar 42` 整段着为 comment,原生窗口行内、并排布局均复现。证据:/tmp/R2.12-r2-language.log、/tmp/R2.12-r2-native.log。修复方向:按语言处理注释起始条件,Shell 的 `#` 在词中保持参数内容,补充真实注释和词中 `#` 的颜色断言。
|
||
|
||
../Ely-GPUI-Components/src/git/rows.rs:179 — 新测试直接调用 colors_of,上一轮指出的渲染接线回归覆盖仍然缺失。复现:在隔离副本中将 viewer.rs:197 改为 `let path: SharedString = "forced.rs".into();`,组件库 `cargo test --lib --features test-support --offline --locked git::` 仍为 35 项全过;实际 DiffViewer 的 Markdown 在行内、并排布局重新出现代码颜色,文本区域分别改变 890、1780 个像素,Python/TOML 行注释也重新出现关键字与数字颜色。证据:/tmp/R2.12-r2-mutation-test.log、/tmp/R2.12-r2-render.log。基线 ElyTree 检查、构建、111 项测试及组件库全量 1726 项测试均通过;探针副本与独立 target 已删除,两个原始仓库的源码散列与状态核对通过。修复方向:增加经过实际 DiffViewer 两种布局的文本颜色断言,使渲染器收到错误文件类型的突变触发失败。
|