2013-11-20 103 views
0

我目前使用vim/byobu-tmux在命令行(cmake/gcc)和vim會話之間進行復用。如何在vim中使用cmake/gcc編譯/跳轉調試

有沒有辦法直接在vim會話中執行以下操作?

  1. 編譯VIM內(我目前在命令行中使用cmakedbg bash的別名/ bash命令)
  2. 跳轉到文件/位置在編譯失敗

內的所有VIM,即會爲我節省很多時間。

+1

你試過'set makeprg = cmakedbg​​'嗎?然後':make'應該編譯,如果失敗它應該自動跳轉到錯誤。這通常工作,但可能需要一些調整,具體取決於設置。 – pfnuesel

+0

@pfnuesel我只是調整了一下,並使它與cmake和並行構建一起工作。我會更多地使用它,這樣我就可以將我的bash腳本/別名的功能轉移到一些vim命令中(比如運行單元測試,如果構建成功的話)。請添加一個答案,以便我可以接受並給予您信用:tyvm。 – kfmfe04

回答

1

你嘗試

set makeprg=cmakedbg 

然後

:make 

應該編譯如果失敗,它會自動跳轉到錯誤(而:make!將編譯不跳到錯誤)。這通常工作,但可能需要一些調整,具體取決於設置。

如果您之前cmakedbg作品需要source .bashrc,您可以通過

:set shellcmdflag=-ic 

使外殼交互式不過,我一直用的問題。我知道它適用於某些人,但當我嘗試時,被交互模式停止。我可以通過輸入fg取回,但這不是我想要的。

我認爲最好的方法是在中設置一個函數,並且不使用.bashrc