技巧108-定制外部编译器
- Vim的:make命令不限于调用外部的make程序,也可以调用任何安装在机器上的编译器。
配置Vim,使其在运行:make时可以调用nodelint,即JSLint的命令接口。
- nodelint依赖Node.js,可以通过NPM命令进行安装
npm install nodelint -g
用Nodelint的输出结构填充Quickfix列表
- errorformat选项允许我们指导Vim如何解析由:make产生的输出结果。
- 参见:h ‘errorformat’
- 查看选项的默认值:
:setglobal errorformat?
errorformat=%*[^"]"%f"%*\D%l: %m,"%f"%*\D%l: %m,%-G%f:%l: (Each undeclared identifier is reported only once,%-G%f:%l: for each function it appears in.),%-GIn file included from %f:%l:%c:,%-GIn file included from %f:%l:%c\,,%-GIn file included from %f:%l:%c,%-GIn file included from %f:%l,%-G%*[ ]from %f:%l:%c,%-G%*[ ]from %f:%l:,%-G%*[ ]from %f:%l\,,%-G%*[ ]from %f:%l,%f:%l:%c:%m,%f(%l):%m,%f:%l:%m,"%f"\, line %l%*\D%c%*[^ ] %m,%D%*\a[%*\d]: Entering directory %*[`']%f',%X%*\a[%*\d]: Leaving directory %*[`']%f',%D%*\a: Entering directory %*[`']%f',%X%*\a: Leaving directory %*[`']%f',%DMaking %*\a in %f,%f|%l| %m
用一条命令设置 makeprg 与 errorformat
- errorformat的配置太难记了。
- 可以将其保存到某个文件并使用:compiler命令来激活它。
:compiler nodelint
- 通过运行以下命令,可以对Vim自带的编译器插件了解得更透彻。
:args $VIMRUNTIME/compiler/*.vim
|