通过巨大的代码库可以很好地搜索文本的编辑器

时间:2018-07-25 10:24:32

标签: visual-studio-code full-text-search sublimetext3 atom-editor

我在Windows上拥有庞大的文本代码库,并且面临着在整个项目中搜索任意单词的问题。

表面上看,IDE并没有因此获得良好的性能。我正在寻找的是一个免费的编辑器,它是:

  • 在可接受的时间(对于1000万行代码,理想情况下,少于10秒)通过文件夹和子文件夹搜索全文
  • 几乎可以肯定,以前的功能需要使用索引。因此,我希望这种索引能够自动与文件更改同步。或者至少可以选择按需逐步重建(不是完全重建)
  • 在上下文中显示搜索结果(带有环绕声代码片段,非常类似于Sublime一样。)
  • 理想情况下,能够搜索 regex模式
  • ...甚至可以通过 multiline 字符串搜索正则表达式。

我不需要它具有代码意识,但是如果它能够理解PL / SQL,那将是我的梦想编辑器。

到目前为止,我的第一选择是Sublime,这是一个响应迅速的编辑器。
Sublime 3附带了一个内部索引,但是对我来说很不幸,它仅对符号而不是全文进行索引。 内置的暴力搜索无法使用该索引,大约需要40分钟才能返回结果。

我尝试了几种 Sublime扩展,它们可以插入外部索引工具(CodeSearch,Platinum Searcher,Whoosh)。但是所有人都无法提供自动或增量索引重建功能,或者当它们确实提供这些功能时,索引本身占用了太多内存,以至整个应用程序永远无法响应,或者插件主机崩溃了。

我也尝试过使用 Atom Visual Studio Code 的类似方法,但是我相信编辑器及其插件不是为像我这样庞大的代码库编写的随手可得。

唯一运行良好的编辑器是带有InstaSearch插件的Eclipse。 但是,我在搜索中获得的速度在普通用法中是丢失的:打开文件,滚动浏览其内容等(更不用说该插件使用Lucene的语法,而不是regex)。 (感觉如果不使用Java相关技术,那么使用Eclipse并没有真正的好处,这确实抵消了使用它的繁重工作)

0 个答案:

没有答案