将CEDET ede cpp根项目命令置于.emacs文件之外

将CEDET ede cpp根项目命令置于.emacs文件之外,emacs,cedet,Emacs,Cedet,我有一个正在工作的EDE项目,但我想在该项目的源代码树中的文件中找到该命令,而不是在我的.emacs文件中。这可能吗 我尝试过使用emacs并加载该文件,但它确实有任何影响。为此,我在项目根目录的.dir-locals.el中放置了以下代码: ((nil . ((ede-cpp-root-project "MyProj" :name "MyProj Project" :file "/home/jlisee/projects/myproj_code/CMakeLists.t

我有一个正在工作的EDE项目,但我想在该项目的源代码树中的文件中找到该命令,而不是在我的.emacs文件中。这可能吗

我尝试过使用emacs并加载该文件,但它确实有任何影响。为此,我在项目根目录的.dir-locals.el中放置了以下代码:

((nil 
 . ((ede-cpp-root-project "MyProj"
     :name "MyProj Project"
     :file "/home/jlisee/projects/myproj_code/CMakeLists.txt"
     :include-path '( "/packages" )
     :system-include-path '( "/opt/myproj/local/include" )
     :spp-table '( ("CONST" . "const") )
     ))))

项目类型ede cpp root适用于那些特别希望将项目文件保留在源代码树之外的人。如果希望在源代码树中使用项目类型,还有其他选项

如果您使用的是最新版本的CEDET,则可以启用通用项目类型,而这些项目类型反过来又支持cmake(看起来您正在使用cmake?)

在CMake的通用项目中,使用

 M-x ede-customize-project RET
外接程序包括路径、宏表等

如果您不使用makefile、cmake或其他任何东西,您可以在.emacs文件中使用一些代码创建自己的通用项目类型。在ede generic中查找所有提到CMake的内容,应该很清楚要创建哪三个内容

我认为现有的项目类型使用的是CMakeLists,而不是CMakeLists.txt,因此可能需要对现有代码进行调整。

我在.emacs末尾添加了(ede enable generic projects)。然后执行“M-x ede customize project RET”,错误为:eio oref:error type参数:(或eio-object-p class-p),nil。如何修复它?
 M-x ede-customize-project RET