2010-10-08 85 views
3

它是如何可能在Emacs和C++擴展的ETag覆蓋多個目錄? (我不是指一種通過使用-R選項具有直接的解決方案遞歸etgas)。的ETag如何處理多個目錄

像這樣的東西是必要的,例如,在我們使用的是第三方庫,包括它的頭,可能會在目錄結構中的任何位置進行安裝的情況。

我使用Emacs作爲一個C++編輯器面臨着類似的問題是如何直接從它的#include指令打開一個包含頭文件。

由於include頭文件路徑是項目的一部分,所以這對於IDE(比如VC _ ++)來說是微不足道的,但是我找不到類似emacs的解決方案,因爲作爲一個更薄的環境,它沒有使用項目的概念。 。

回答

3

回答的主要問題:使用find遍歷您的目錄 例如在我的標記腳本:

find . \(-name "*[tT]est*" -o -name "CVS" -o -name "*#*" -o -name "html" -o -name "*~" -o -name "*.ca*" \) -prune -o \(-iname "*.c" -o -iname "*.cpp" -o -iname "*.cxx" -o -iname "*.h" -o -iname "*.hh" \) -exec etags -a {} \; 

提示爲C++和包含的頭解決方法:查看是否cscope工作更好地爲您。

2

您也可以查看GNU global而不是etags,以及ff-find-other-fileffap以及相關的find-file-at-point函數以跳轉到您正在使用的包含文件。這兩組函數都有各種自定義選項,因此您可以告訴他們在哪裏搜索標題。