我在編寫(xiě)a.less
文件,我想在執(zhí)行:w
保存命令時(shí)自動(dòng)調(diào)用lessc
命令編譯該文件變成a.css
文件。lessc
命令的格式是 lessc a.less a.css
。
請(qǐng)問(wèn)該如何設(shè)置?
不知道為什么autocmd BufWritePost
不起作用,那么只有用autocmd BufWriteCmd
了。
function! CompileLess()
exec "w"
exec "!lessc % > %:t:r.css"
endfunction
if executable("lessc")
autocmd BufWriteCmd *.less call CompileLess()
endif
大概代碼如下,cmd那里自己完善下,使用system可以取出編譯結(jié)果,如果錯(cuò)誤就輸出,這樣好定位錯(cuò)誤
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