2012-01-31 10 views
4

通過學校我使用Eclipse與Eclipse,但我要嵌入並拿起C和Emacs。我正在尋找一種在Eclipse中實現項目的幾個功能的方法。具體來說,我錯過的功能是找到在另一個文件中聲明的函數的聲明,並查找對函數的所有調用。有沒有辦法做到這一點?我不介意使用make文件進行編譯,因爲它看起來是正確的工具(除了我的理解是,如果你使用eclipse或visual studio for C他們只是自動生成一個make文件)。我只是忍不住覺得上面提到的一些東西在編輯器中也必須有解決方案,因爲它們非常方便。如何從Emacs中獲取Eclipse項目效果?

+2

[?Emacs的代碼完成C/C++](http://stackoverflow.com/questions/1285971/emacs-code-completion-for-cc) – pmr 2012-01-31 23:33:05

+1

另一種可能的重複的可能重複:[代碼瀏覽,重構,在Emacs自動完成](http://stackoverflow.com/q/671412/790070) – 2012-01-31 23:41:29

+0

補給它我尋找其他人問這個問題,找不到它... – Irony 2012-01-31 23:45:31

回答

5

我建議組合projectile + ctags + ECB(或只是CEDET)+ cscope

子彈提供項目文件中的輕鬆導航以及文本搜索,標籤再生等一些不錯的功能。ECB是一個Emacs代碼瀏覽器,使得Emacs看起來更像IDE,CEDET會爲您提供智能代碼完成,並且cscope將會讓你能夠找到用法(其他很酷的功能)。

+0

子彈看起來很有趣。 – phils 2012-02-01 09:36:05

1

對於源代碼中的導航,您可能需要查看Ctags in emacs

一旦你得到了它成立,則可以使用下面的命令來跳轉到函數實現或變量/宏聲明:

M-. <RET>   Jump to the tag underneath the cursor 
M-. <tag> <RET>  Search for a particular tag 
C-u M-.    Find the next definition for the last tag 
M-*     Pop back to where you previously invoked "M-." 

對於你提到的其他功能,看看Cedet

+0

我發現'etags-select'提供了一個更好的界面,並建議嘗試它:http://www.emacswiki.org/emacs/EtagsSelect – phils 2012-02-01 09:38:17

2

如果你知道的Eclipse那麼,你可能想看看Eclim它使用的Eclipse作爲後端提供智能符號查找,竣工等爲Emacs或Vim的。

1

下載XCsope.el和所有你的問題將由emacs照顧。

我曾經在Source Insight上瀏覽過,但現在emacs + cscope好多了。