具有多个目录的Emacs和cscope
当我的源代码位于多个目录中时,如何在Emacs中设置cscope <我的C++项目有几个路径:具有多个目录的Emacs和cscope,emacs,cscope,Emacs,Cscope,当我的源代码位于多个目录中时,如何在Emacs中设置cscope
/path/to/my/code
(和子目录)/path/to/other/code
(和子目录)/path/to/static/linking/include/files
(和子目录)/path/to/static/linking/lib/files
'(和子目录)xcscope
在我的代码和链接到的库中导航/查找符号
forxscope.el
说我应该首先在/path/to/my/code
运行C-cs(Cscope->Create list and index),但是我不知道如何让其他路径由Cscope索引
文档中说我应该转到其他目录并运行cscope-b
,但是在那之后我应该做什么呢
我查看了C-CS构建的cscope.files
文件。我想我应该将我的其他路径添加到此文件,但此文件包含源代码文件的列表(不是目录)
我是否必须手动编辑cscope.files来添加项目根目录之外的每个要索引的文件?文档很混乱 我收到一封信。仍然令人困惑 cscope.files的名称非常恰当。它不是目录。它是文件,只有文件。这听起来很吓人。如果你有数百个文件呢。然后,您必须在cscope.files中写入数百行,每个文件一行。别开玩笑了 通过编写脚本来实现自动化。例如,在linux上,使用bash脚本和重定向(>,>>,|)操作符从任何和所有目录中选择文件并过滤到该cscope.files中。 cscope.files所在的目录如何?如果您不包含这些文件,那么只有在您打开该源目录中的项目(在emacs中,但可能适用于任何IDE)时,它才会找到这些文件。所以,也要包括它们,以便从任何地方轻松打开项目。 选项“recursive/-R”显然可以发送给cscope索引器。不,没有很多根目录。什么都不做(可能与脚本或elisp有关,谁知道呢)。只需将这些文件(绝对路径)输入cscope.files。您可能必须确保每个项目只有一个cscope.files。不要将它们相对于每个目录进行拆分。或者你可以,做些调查 请记住,如果希望cscope.files从任何位置指向文件,请在文件之前包含/path/to/each/file/。cscope不是“智能”的,它是哑的,它只是指示在哪里查找,它不知道在哪里查找“文件名”,而不知道它在哪里。您只是要求它调用
定位文件名
,当您给它一个单独的文件名时,它无论如何都不能这样做,而在特定的cscope.files所在的目录之外没有目录路径
我希望有一种方法可以在emacs中使用xcscope,只需添加它将对其进行编目和索引的目录,正如xcscope文档和emacs菜单所建议的那样。但是我没有成功地让它那样工作。软链接(ln-s)不起作用吗?为我工作