为 neomake 获取正确的错误格式
Getting the correct errorformat for neomake
我正在使用工具 alex 为降价制作定制的 neomake maker,但很难找到正确的 errorformat
。调试了一下,好像neomake returns下面的信息
Neomake [2.587]: [1.6] stderr: alex: ['test.md', ' 1:5-1:14 warning `boogeyman` may be insensitive, use `boogey` instead boogeyman-boogeywoman retext-equality', '', '⚠ 1 warning', '']
Neomake [4.431]: [1.6] exit: alex: 1
Neomake [4.431]: [1.6] alex: processing 4 lines of output.
Neomake [4.432]: [1.6] Removing invalid entry: test.md ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [6.404]: [1.6] Removing invalid entry: 1:5-1:14 warning `boogeyman` may be insensitive, use `boogey` instead boogeyman-boogeywoman retext-equality ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [7.837]: [1.6] Removing invalid entry: ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [8.669]: [1.6] Removing invalid entry: ⚠ 1 warning ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [9.469]: [1.6] alex: completed with exit code 1.
Neomake [9.469]: File-level errors cleaned in buffer 1
到目前为止,我获得的最成功的格式是 errorformat = %I%f
,但感觉方向不对。
有ideas/tips吗?
如果您不介意从 competition 中获得灵感,像这样的方法可能会奏效:
let errorformat =
\ '%P%f,' .
\ '%-Q,' .
\ '%*[ ]%l:%c-%*\d:%n%*[ ]%tarning%*[ ]%m,' .
\ '%-G%.%#'
或者,您可以使用 alex plugin for textlint. As it turns out textlint 是一个更有趣的目标,它具有更好的输出格式。
我正在使用工具 alex 为降价制作定制的 neomake maker,但很难找到正确的 errorformat
。调试了一下,好像neomake returns下面的信息
Neomake [2.587]: [1.6] stderr: alex: ['test.md', ' 1:5-1:14 warning `boogeyman` may be insensitive, use `boogey` instead boogeyman-boogeywoman retext-equality', '', '⚠ 1 warning', '']
Neomake [4.431]: [1.6] exit: alex: 1
Neomake [4.431]: [1.6] alex: processing 4 lines of output.
Neomake [4.432]: [1.6] Removing invalid entry: test.md ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [6.404]: [1.6] Removing invalid entry: 1:5-1:14 warning `boogeyman` may be insensitive, use `boogey` instead boogeyman-boogeywoman retext-equality ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [7.837]: [1.6] Removing invalid entry: ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [8.669]: [1.6] Removing invalid entry: ⚠ 1 warning ({'lnum': 0, 'bufnr': 0, 'col': 0, 'valid': 0, 'vcol': 0, 'nr': -1, 'type': '', 'maker_name': 'alex', 'pattern': ''})
Neomake [9.469]: [1.6] alex: completed with exit code 1.
Neomake [9.469]: File-level errors cleaned in buffer 1
到目前为止,我获得的最成功的格式是 errorformat = %I%f
,但感觉方向不对。
有ideas/tips吗?
如果您不介意从 competition 中获得灵感,像这样的方法可能会奏效:
let errorformat =
\ '%P%f,' .
\ '%-Q,' .
\ '%*[ ]%l:%c-%*\d:%n%*[ ]%tarning%*[ ]%m,' .
\ '%-G%.%#'
或者,您可以使用 alex plugin for textlint. As it turns out textlint 是一个更有趣的目标,它具有更好的输出格式。