Block a user
🟡 [M2] Unicode 显示宽度全部视为 1,CJK/emoji 包裹位置错误
修复已合并: b58d66f
变更内容
crates/core/src/io/wrap.rs:wrap_line_chars中将硬编码width=1替换为unicode-widthcrate 的UnicodeWidthChar::width(),正确处理 CJK (width=2)、…
🟡 [M2] Unicode 显示宽度全部视为 1,CJK/emoji 包裹位置错误
🟡 [M1] update_for_append 不更新 visual_height_index
🟡 [M1] update_for_append 不更新 visual_height_index
修复方案
根因: 文件不以 \n 结尾时,追加内容会续写最后一行导致其 visual height 变化,但 handle_file_appended 只为新增逻辑行计算高度,遗漏了旧行最后一行的高度更新。
修复: 新增…
dailz
created branch fix/m20-append-lines-error-handling in dailz/logViewer
2026-06-07 09:17:17 +08:00
🟡 [M20] append_lines 吞掉行计数 I/O 错误并从 0 继续编号
🟡 [M20] append_lines 吞掉行计数 I/O 错误并从 0 继续编号
修复方案
提交: f6081b9
改动内容
1. append_lines — 先计数再打开 + 错误传播
- let existing_lines = count_existing_lines(path).unwrap_or(0);
+ let existing_lines =…
🟡 [M25] truncate safety benchmark 首轮后文件规模改变导致迭代条件不一致
已修复,提交 97a2c6a。
根因: bench_truncate_safety_mmap 和 bench_truncate_safety_pread 在循环外生成 150K 行文件,循环内恢复只写 1000 行,导致第 2 轮起文件从 ~10MB 缩水到 ~67KB。
修复: 将…
🟡 [M25] truncate safety benchmark 首轮后文件规模改变导致迭代条件不一致
🟡 [M24] memory scroll_rss 的 lines_read 记录值不等于实际读取行数
改动内容 (
修复方案
Commit: e6e0e2c
改动内容 (crates/bench/src/suites/memory.rs)
- 新增
upper = max_lines.min(total)作为循环上界,正确处理空文件边界 - 新增
lines_read计数器,仅在…
🟡 [M24] memory scroll_rss 的 lines_read 记录值不等于实际读取行数
fix: [M23] 小文件 single_frame_tail 与 head 重叠导致 render 数据误导
🟡 [M23] 小文件 single_frame_tail 与 head 重叠导致 render 数据误导