我在编写a.less
文件,我想在执行:w
保存命令时自动调用lessc
命令编译该文件变成a.css
文件。lessc
命令的格式是 lessc a.less a.css
。
请问该如何设置?
不知道为什么autocmd BufWritePost
不起作用,那么只有用autocmd BufWriteCmd
了。
function! CompileLess()
exec "w"
exec "!lessc % > %:t:r.css"
endfunction
if executable("lessc")
autocmd BufWriteCmd *.less call CompileLess()
endif
高洛峰2017-05-16 16:38:31
大概代码如下,cmd那里自己完善下,使用system可以取出编译结果,如果错误就输出,这样好定位错误
function! CompileLess()
let cmd = 'lessc + ' + expand('<afile>:p:h')
let output = system(cmd)
if v:shell_error
echohl WarningMsg | echo output
endif
endfunction
if executable('lessc')
autocmd BufWritePost *.less call CompileLess()
endif