2012-11-19 50 views
13

我希望將vim設置爲C++ IDE,以便我可以完成所有工作。將vim設置爲C++ IDE

我使用這些插件VIM:

    • 鏘完整的 - 準確的完成
    • nerdtree - 瀏覽文件
    • snipmate - 插入片段
    • AutoComplPop - 全方位完成
    • buffergator - 緩衝管理
    • VIM電力線 - 好的狀態欄
    • vundle - 管理插件

但我缺少的東西像跳轉到和編譯多個文件在一個可執行,項目視圖...

我正在使用

nmap <F8> :w % <bar> :!g++ -W -Wall -Wextra -pedantic -std=c++11 % -o %:t:r<CR> <bar> :!./%:t:r<CR> 

編譯當前文件,但如果有多個文件創建一個可執行文件,它將不起作用。

我知道我可以使用eclipse,netbeans,code :: blocks等,但我真的很喜歡vim ...如果vim ide這樣的東西不可行,我必須學習GNU構建系統或其他方法?

歡迎任何建議。

+2

如果你寫一個快速生成文件(或者生成一個),你可以運行!make – jozefg

+2

@jozefg,'!make'只會運行外部make,就是這樣。在vim中有內置的'make'命令,它還會創建一個帶有錯誤/警告的'quickfix'窗口。它更有用 – 2012-11-19 15:16:13

回答

5

您需要創建一個處理構建過程的makefile。

從VIM

然後只需運行:make,它將運行構建和流行在quickfix窗口,您可以導航,並跳轉到錯誤位置的所有錯誤。

+0

任何可以自動創建makefile的方法? – RedSparrow

+2

我知道這個線程是舊的,但你可以使用cmake。它的使用相對簡單,您的代碼可以在不同的平臺上編譯。 – JohnJohn

1

首先,跳轉到定義,你可以試試這個:

我沒有測試過,所以我不能告訴你,如果它的工作原理。

現在,要構建多個文件項目,最好學習如何使用makefile和automake。這些鏈接可以幫助您:

好運。

編輯:類似的問題得到回答此鏈接:https://stackoverflow.com/a/563992/1820837

0

「跳轉到」已經存在,它是<C-]>用光標在命令行上的關鍵字或:tag foo

對於這些工作,您需要exuberant-ctags生成的tags文件,並告訴Vim在哪裏可以找到它。見:help tags:help ctags

如果沒有tags文件,gd會轉到光標所在的關鍵字的定義,如果它在同一個文件中。但它不如<C-]>一般有用。

+0

一切都是正確的,但是,通常我會添加相同的建議:我建議不要手動處理ctags,而是使用插件Indexer(http://goo.gl/Q744m),它會自動執行所有痛苦的工作:它默默地生成你的標籤,告訴Vim在哪裏尋找它,並且讓標籤保持最新狀態。所有的工作都是在後臺完成的,所以你不需要等待。 –

0

對於「跳轉到定義」,我可以推薦YouCompleteMe,這個插件很容易用vundle進行設置。

否則也有ctags,但我覺得它沒那麼有用。

要使用vim作爲IDE,我發現this後有用。