Files
reader/docs
hectorqin 49b8ffd6d0 fix(web): TXT 排版改由实际内容决定,并让面板的行跟着它走
上一提交把 TXT 的样式表与设置行都挂在 `format === 'txt'` 上,而这只在服务端
报告 `kind: 'text'` 时成立。UI 评审的替身 API 把一份纯文本按 `reflowable`
分窗——这是个合理的选择,纯文本本来就 reflowable——于是量出来:段首缩进
`0px`、样式表长度 0、设置面板里没有「正文」一节。也就是说读者能看到没有排版的
段落,而且旁边没有任何可以调整的地方。

改成两边都从**实际内容**确认:服务端自己的 `.txt-body` 包装是这条约定,
`format: 'txt'` 仍优先(声明了的书不用再自证)。视图的回答和设置面板的回答
现在来自同一个方法 `ReaderView.isPlainText()`——同一个问题被两处各算一遍,
迟早会给出两个答案,而读者看到的就是「段落没样式 + 旁边没有缩进控件」。

「正文」一节也从面板末尾移到「排版」后面:它和排版是同一类设置,找缩进的读者
不该翻过朗读控件才找到它。

`shadow.test.ts` 加了检测的四种情形(声明为 txt / 观测到 txt-body / 正文里
提到这个词 / 完全没有标记)。

评审本身也修了两处:每个场景显式声明主题(之前 TXT 场景沿用了夜间场景留下的
深色,截图不是标签说的那件事);截图不再入库(每次跑都变,二进制 diff 是评审
噪音),`report.json` 和 `README.md` 仍然提交——那才是人看的部分,也是流水线
断言的部分。
2026-09-18 12:50:05 +08:00
..