我希望能够为Emacs实现类似于Resharper的“转到文件”功能。当用户按下快捷键时,Resharper会弹出一个文本框,接受通配符字符串并显示自动完成菜单,列出与该通配符匹配的项目中的所有文件:
(来源: jetbrains.com)
目前,我知道一种比较粗糙的方法来实现类似的功能。它涉及使用带有-lR选项的dired,然后调用dired-isearch-filenames - 这将在特定根目录内的整个文件层次结构上启动增量搜索。
更新:我也知道打开大量缓冲区并将它们全部保存在内存中,然后使用switch-to-buffer
的选项。这个解决方案与ido
很好地配合使用,但它并不是100%牢固的(如果有一些文件被添加或删除怎么办?)。它也不能很好地与tabbar
配合使用,因为选项卡将显示包含在项目中的所有文件,而不是表示我的当前上下文子集的项目。
然而,这显示了大量不必要的信息,并且缺少自动完成功能。我已经查看了ido
和icicles
,但它们似乎只能在当前目录中浅层地工作。是否有一个Emacs插件可以帮助我实现我的目标?