VIM使用系列:quickfix功能 在程式的開發過程中,很重要的一個迴圈是:編輯-編譯-編輯,vim中的quickfix功能就是為了提高這一迴圈的效率。quickfix功能將編譯過程中產生的錯誤資訊儲存到檔案中,然後vim利用這些資訊跳轉到源檔案的對應位置,我們就可以進行錯誤的修正,之後跳到下一個錯誤重複上述操作,從而極大地提高編譯錯誤的修改效率。 在vim中除了文本編輯功能外,還可以直接地調用外部的編譯器完成程式的編譯工作,實現這一功能,只要簡單地使用vim命令: 1:makemake命令執行的程式為vim變數makeprg的值,預設makeprg=make,使用Makefile機制進行項目的編譯、管理。可以通過set makeprg=xxx的命令修改makeprg的值,從而使make命令執行不同的編譯。例如: 1:set makeprg=gcc\ hello.c\ -o\ hello變數的值為字串,當在其中有空格時需要用\進行轉義,同樣如果想輸入\也要進行轉義。在vim運行時通過命令列設定的變數值均是臨時的,即當推出vim環境時,該變數值會恢複為設定檔中的值或者預設值。 推薦使用Makefile的方式進行項目的編譯、管理,可以實現項目的自動化管理、有利於提高效率。 通過make命令完成程式的編譯工作後,會得到編譯結果,一般會有一些編譯錯誤,此時的工作就是對照錯誤提示修改源檔案,然後重新編譯。quickfix功能使我們可以直接跳到檔案中的錯誤位置,直接進行修改,並通過使用quickfix的命令完成錯誤清單的跳轉。查看線上協助,通過命令: 1:help quickfix常用的quickfix命令為: :cc 顯示詳細錯誤資訊:cp 跳到上一個錯誤:cn 跳到下一個錯誤:cl 列出所有錯誤:cw 如果有錯誤清單,則開啟quickfix視窗,沒有則什麼也不錯:copen 開啟quickfix視窗,可以在後面添加視窗高度參數,如10行: :copen 10:cclose 關閉quickfix視窗:col 到前一箇舊的錯誤清單:cnew 到後一個較新的錯誤清單