Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c Emacs相当于Xcode';s";“快速打开”;_Objective C_Xcode_Emacs_Emacs Helm - Fatal编程技术网

Objective c Emacs相当于Xcode';s";“快速打开”;

Objective c Emacs相当于Xcode';s";“快速打开”;,objective-c,xcode,emacs,emacs-helm,Objective C,Xcode,Emacs,Emacs Helm,我正在尝试让Cocoa开发环境在Emacs中工作,我已经完成了80%的工作。我错过的一个特性是Xcode的“快速打开”,它基本上对您键入的字符串与Xcode工作区中引用的文件名以及这些文件中定义的符号进行模糊匹配 我的问题是我们的项目是巨大的:如果我为项目子目录中的.h和.m文件使用etag生成一个标记文件,结果是大小超过一格,Emacs抱怨“标记文件太大了。真的打开了吗?”,如果我说是的,Emacs就会挂起,基本上无法使用。当然,这是在我考虑为系统库编制标签索引之前。我也尝试过,但不幸的是,在

我正在尝试让Cocoa开发环境在Emacs中工作,我已经完成了80%的工作。我错过的一个特性是Xcode的“快速打开”,它基本上对您键入的字符串与Xcode工作区中引用的文件名以及这些文件中定义的符号进行模糊匹配

我的问题是我们的项目是巨大的:如果我为项目子目录中的
.h
.m
文件使用etag生成一个标记文件,结果是大小超过一格,Emacs抱怨“标记文件太大了。真的打开了吗?”,如果我说是的,Emacs就会挂起,基本上无法使用。当然,这是在我考虑为系统库编制标签索引之前。我也尝试过,但不幸的是,在我这样规模的项目上,它同样无法使用(大约需要整整一分钟才能找到匹配项)

我突然想到,我真正想要的所有索引信息都在Xcode项目本身中,因此,如果我有一个能够解析它们并遍历它们的依赖关系的Emacs包,这可能是一个开始,但我不知道有任何这样的包


在这方面有什么建议/解决方案吗?

我从来没有发现一个函数像Xcode的“快速打开”那样方便,但现在我使用

  • 当我想匹配字符串时,我知道要在文件名中,并且
  • 用于快速搜索文件本身的内容

我发现这让我非常接近我在最初的问题中想要的东西。

任何项目的最后20%占用了80%的时间。。。Xcode的OpenQuick构建在源索引器之上,源索引器构建在编译器之上。。。大量的努力已经投入到创建快速开放所需的基础设施。。。好。。。快开门。并不是说它不能在emacs中实现(我的大部分灰色胡须都是通过我的~250K.emac获得的),只是低估了一个看似简单的功能背后的基础设施的深度是一个错误!哦,还有,愿.el的力量与你同在。如果GNU Global是你的一个选择,那应该是对标记文件的一个巨大改进(我不确定这是否有助于解决你的主要问题,但我想一些不同的“find a thing”库可以与Global集成。)谢谢@bbum!非常感谢您在这里的见解。@PHD尽管如此,源代码的索引是封装在LLVM/Clang、IIRC中的。因此,你应该能够构建一个插件,搜索源代码并输出一个索引,emacs可以被教导使用