我想将 cscope 的输出重定向到 Vim quickfix 窗口。胶水部分很容易,但我目前停留在错误格式。这是 cscope 输出的示例(cscope -L -1 bar):
Format: "filename scope linenumber sourceline"
Example: "abc.cpp foo 25 bar()"
这意味着在 foo() 内部,在 abc.cpp 的第 25 行有一个对 bar() 的调用。
efm = %f\ %*[^\ ]\ %l\ %m
工作,但范围信息丢失。例如:
Input: "abc.cpp foo 25 bar()" becomes
Output: "abc.cpp |25| bar()"
我想要的是在 quickfix 窗口中包含范围,如下所示:
Input: "abc.cpp foo 25 bar()" becomes
Output: "abc.cpp |25| bar() inside foo()"
是否可以仅使用错误格式来执行此操作,或者我是否需要编写一个脚本来操作输出,然后再将其提供给 Vim?