Emacs 非常具体的CEDET设置困难 我有以下的设置:我在一个定制的构建系统下使用C++项目,而在我的开发机器上,源代码目录不是很稳定,因为我经常在自己的目录中检查一些项目的特定版本(从我存储所有源代码的单个源目录中)用于维护或新功能开发,然后在完成后删除它们。我想使用EDE/CEDET,但我不想在我的家乡存储项目定义。我真正想要的是某种自动加载器,它似乎存在,但我无法理解文档。有人能告诉我如何设置这样的事情吗? < P>有一些选择,但是我猜想,随着你的C++项目出现在一堆随机的位置中,你想创建一个自定义的方法来自动创建EDE CPP根项目。

Emacs 非常具体的CEDET设置困难 我有以下的设置:我在一个定制的构建系统下使用C++项目,而在我的开发机器上,源代码目录不是很稳定,因为我经常在自己的目录中检查一些项目的特定版本(从我存储所有源代码的单个源目录中)用于维护或新功能开发,然后在完成后删除它们。我想使用EDE/CEDET,但我不想在我的家乡存储项目定义。我真正想要的是某种自动加载器,它似乎存在,但我无法理解文档。有人能告诉我如何设置这样的事情吗? < P>有一些选择,但是我猜想,随着你的C++项目出现在一堆随机的位置中,你想创建一个自定义的方法来自动创建EDE CPP根项目。,emacs,cedet,Emacs,Cedet,如果查看ede/ede-cpp-root.el或emacs lisp/cedet/ede/cpp-root.el,请在顶部的注释中查找高级示例。这展示了如何使用规则在.emacs中创建三个简单函数,这些规则将在发现时创建新项目 假设您的每个项目都在这样的目录中: /home/BD/somewhere/MYPROJ/ (when (string-match "/MYPROJ/" dir) (expand-file-name "Makefile" (substring dir (m

如果查看ede/ede-cpp-root.el或emacs lisp/cedet/ede/cpp-root.el,请在顶部的注释中查找高级示例。这展示了如何使用规则在.emacs中创建三个简单函数,这些规则将在发现时创建新项目

假设您的每个项目都在这样的目录中:

/home/BD/somewhere/MYPROJ/
  (when (string-match "/MYPROJ/" dir)
      (expand-file-name "Makefile" (substring dir (match-end 0)) )
然后,您可能会在MY-FILE-FOR-DIR(示例中)中看到如下代码:

/home/BD/somewhere/MYPROJ/
  (when (string-match "/MYPROJ/" dir)
      (expand-file-name "Makefile" (substring dir (match-end 0)) )
或者,如果每个项目都有一些特殊的文件,比如“.special”,那么您可能有

  (when (file-exists-p (expand-file-name ".SPECIAL" dir)))
      (expand-file-name ".SPECIAL" dir))
很可能您可以从一些简单的Emacs Lisp代码中获得很多相似之处