如何为ede编写locate函数

时间:2010-12-20 16:55:46

标签: emacs dot-emacs cedet

我使用emacs作为C ++ IDE。 我有CEDET和EDE配置并且运行良好,但我有一个小问题。

在我的项目中,头文件遍布项目树,所以我需要编写一个函数来帮助ede找到我的头文件。 我一直在寻找一个例子,但我没有找到任何东西。 有人会这么善意帮助我吗?

提前致谢。

2 个答案:

答案 0 :(得分:1)

以下是使用EDE和ido的项目中“快速查找文件”的示例:

(defun DE-ido-find-files-in-project ()
  (interactive)
  (let ((allfiles nil)
 choice)
    (ede-map-all-subprojects
     ede-object-root-project
     (lambda (p)
       (let ((targets (oref p targets)))
  (dolist (target targets)
    (setq allfiles (append allfiles (oref target source)))))))
    (setq choice
   (ido-completing-read
    (format "File in project %s: " (oref ede-object-root-project name))
    allfiles nil t))
    (when choice
      (ede-find-file choice))))

答案 1 :(得分:0)

命令'ede-find-file'绑定到“C-c.f”。根据您拥有的项目类型,您可能需要启用gnu-global或idutils等工具。有关这些工具的设置,请参阅CEDET手册。 CEDET集成了这些工具,以帮助查找文件和符号等内容。

如果您改为从C文件中找到“找到”#include语句,以便符号完成起作用,则需要设置项目级别包含路径。如何工作取决于您正在使用的EDE项目的类型。