如何在编辑文件时保持Vim quickfix列表行号为最新

mznpcxlj  于 2022-11-11  发布在  其他
关注(0)|答案(1)|浏览(139)

我已经使用Vim很多年了,但直到最近我才真正开始使用快速修复列表。
一个立即让我震惊的可用性问题是,当我修复快速修复列表中的第一个问题时,所有后续问题的行号现在都偏离了一定的数量。如果我有几个错误,这个问题会很快复合。我几乎总是在修复一两个问题后重新运行我的linters来重新计算列表。
有没有办法让Vim保持快速修复列表中的行号是最新的?当我在快速修复列表条目上添加或删除行时,该条目的行号应该相应地增加或减少。

6vl6ewon

6vl6ewon1#

quickfix list 和quickfix window 不会与缓冲区的内容保持最新,因为它们反映的是(过去)用于生成列表的底层命令(grep、linter等)的输出。
如果您确实想让快速修复列表和窗口与缓冲区的内容保持最新,则必须:
1.将缓冲区写入磁盘,
1.再次运行您的linter以获得新的快速修复列表。
我不认为这是值得的麻烦,因为您用来跳转列表的命令足够“聪明”,可以很好地处理添加和删除的行:

为什么你没有得到预期的行为是需要调查的,在这里,而不是如何得到它。

相关问题