#4117·prism

diff:<lang> 将大块和文件粘合在一起,因此一个未终止的构造会污染其余部分

作者: DmitrySharabin创建于 2026年9月17日更新于 2026年9月17日

#4110 介绍了 `diff` 选择器,它选择了 `unchanged, deleted, diff` 和 `unchanged, inserted, diff`。选择器未命名的所有内容都会从传递给内部语言的文本中删除 - `coord` 行(`@@ …`、`--- a/file`、`***` 和正常差异 `1c1`)以及匹配不上的文本,因为 `diff --git a/x b/x` 与任何 `coord` 规范都不匹配。删除它们会使非相邻的区域连续,因此未终止的构造(块注释、字符串、模板字面量、有边界的块)会延伸到下一个块和下一个文件。