4

errorformat当当前目录是带有错误文件的目录的同级目录时,我正在努力寻找要使用的正确 Vim 。例如:

errorformat
errorformat/model
errorformat/spec

Vim 的makeprg选项设置为执行errorformat/spec. 我从errorformat/model. Vim 设置为使用当前文件的目录作为工作目录。

为了测试,我正在运行以下errorformat/model/errorformat.vim

set makeprg=ruby\ ~/errorformat/spec/errorformat_spec.rb
let &efm="%D%f,%f:%l"
make!
copen

如您所见,它在兄弟目录中运行一个 Ruby 文件

puts %{errorformat}
puts %{./spec/errorformat_spec.rb:1}
exit 5

想要的效果是,当我从不同的目录运行规范时,Vim 将使用%Dinerrorformat让我打开规范文件。但它不起作用。特别是,我似乎无法%D%f做到我所期望的。当我运行这个测试时,QuickFix 窗口显示

|| errorformat
|| ./spec/errorformat_spec.rb:1

双条表示%D%f部分errorformat未识别输出。这似乎也阻止了下一行被该%f:%l部分解释。

一定有一些非常简单的东西我错过了!

4

1 回答 1

1

问题在于错误格式的顺序。该%D%f部分需要%f:%l部分之后进行。

于 2011-07-12T19:26:41.070 回答