0
處理錯誤我有一個解析器輸出這樣的信息:VIM:錯誤格式運用於無法理解如何爲我的解析器
|| Error: M:\workdir\MyFile.ja: line 38: "Blablabla" has no license declaration
|| Error: M:\workdir\MyFile.ja: unknown attribute "blabla"
|| Fatal: M:\workdir\MyFile.ja: not generating output because of 2 earlier errors
我嘗試用下面的錯誤格式運用於解析它:
let &errorformat=&errorformat . ',' . 'Error: %f: line %l: %m'
let &errorformat=&errorformat . ',' . 'Error: %f: %m'
let &errorformat=&errorformat . ',' . 'Fatal: %f: line %l: %m'
let &errorformat=&errorformat . ',' . 'Fatal: %f: %m'
但它什麼都不匹配。有人能幫我指出我做錯了什麼嗎?
謝謝。
編輯2017年6月21日:我運行:AsyncRun build
我的生成命令(這是一個自定義腳本)(使用https://github.com/skywind3000/asyncrun.vim插件)。該插件只是簡單地運行該命令並將其輸出重定向到quickfix。
症狀是quickfix窗口包含消息而不被識別爲錯誤消息。
set errorformat
包含我添加的定義。
let &errorformat=&errorformat . ',' . '%*[ ]Error: %f: line %l: %m'
let &errorformat=&errorformat . ',' . '%*[ ]Error: %f: %m'
let &errorformat=&errorformat . ',' . '%*[ ]Fatal: %f: line %l: %m'
let &errorformat=&errorformat . ',' . '%*[ ]Fatal: %f: %m'
它現在就像一個魅力:其實我需要這種錯誤格式運用於也匹配前導空格
也張貼在這裏:https://vi.stackexchange.com/q/12676/51 – Carpetsmoker
我認爲你的errorformat定義看起來不錯。我最好的猜測是,quickfix不能像你認爲的那樣工作。你應該描述你產生問題的所有步驟。 –