Dec 22nd, 2011 php, syntax, vim Vim Runtime 不需存檔檢查 PHP 語法 之前 vim PHP syntax check 都是跟存檔綁在一起,同事想要不用存檔就可以檢查,就弄了一下。 set errorformat=%m\ in\ %f\ on\ line\ %l if !exists('*PHPsynCHK') function! PHPsynCHK() ccl let winnum = winnr() let linenum = line('.') let colnum = col('.') silent execute "%!php -l -f /dev/stdin | sed 's/\\/dev\\/stdin/".bufname("%")."/g' >.vimerr; cat" silent cf .vimerr cw execute winnum . "wincmd w" silent undo silent cf if 1 == len(getqflist()) call cursor(linenum, colnum) endif endfunction endif 用法直接 :call PHPsynCHK() 即可,可以自己綁定熱鍵。