Emacs命令查找并打开类似于Eclipse的文件

Emacs命令查找并打开类似于Eclipse的文件,eclipse,emacs,Eclipse,Emacs,我最近从使用Eclipse切换到使用emacs。我试图找到一种方法来模拟eclipse的Ctrl-Shft-r功能,它允许您键入文件名,并开始显示当前工作区中以您键入的字符串开头的所有文件 C-xc-f似乎只处理当前目录中的制表符完成,而Eclipse的功能查看所有子目录以找到匹配的文件 我在寻找一些东西,也许有一个插件可以做到这一点,它允许您键入要查找的文件夹的名称,然后键入一个部分文件,并在缓冲区中返回结果。可能是使用“自动完成”来列出匹配的文件及其完整路径。首先,避免使用普通的“查找文件”

我最近从使用Eclipse切换到使用emacs。我试图找到一种方法来模拟eclipse的Ctrl-Shft-r功能,它允许您键入文件名,并开始显示当前工作区中以您键入的字符串开头的所有文件

C-xc-f似乎只处理当前目录中的制表符完成,而Eclipse的功能查看所有子目录以找到匹配的文件


我在寻找一些东西,也许有一个插件可以做到这一点,它允许您键入要查找的文件夹的名称,然后键入一个部分文件,并在缓冲区中返回结果。可能是使用“自动完成”来列出匹配的文件及其完整路径。

首先,避免使用普通的“查找文件”功能,这是在点击C-x C-f时运行的交互式功能。它是非常有限的,它迫使您一直点击TAB,大多数人在切换到emacs时做的第一件事就是用更强大的东西替换find file

有很多选择。是一个,是另一个。前者重量轻,速度快,内置emacs。后者是非常强大的,并努力做到快速

其次,递归文件搜索通常有两种方法:

目录搜索-当你只搜索一个目录时,这里没有什么惊喜; 项目搜索——当你设置你正在处理的项目时,这样emacs就会知道你现在感兴趣的文件。 对于目录搜索,ido find file和helm find file都是可行的选项。Ido在您暂停键入时自动执行搜索;头盔使用C-u M-g s激活格雷普。有关更多信息,请参阅


对于项目搜索,您需要一个库来管理您的项目。这很好。设置并使用C-C p f或C-C p f分别列出当前或所有项目中的文件。哦,Sproject默认使用ido,但也有helm支持。

首先,避开香草查找文件功能,这是在点击C-x C-f时运行的交互式功能。它是非常有限的,它迫使您一直点击TAB,大多数人在切换到emacs时做的第一件事就是用更强大的东西替换find file

有很多选择。是一个,是另一个。前者重量轻,速度快,内置emacs。后者是非常强大的,并努力做到快速

其次,递归文件搜索通常有两种方法:

目录搜索-当你只搜索一个目录时,这里没有什么惊喜; 项目搜索——当你设置你正在处理的项目时,这样emacs就会知道你现在感兴趣的文件。 对于目录搜索,ido find file和helm find file都是可行的选项。Ido在您暂停键入时自动执行搜索;头盔使用C-u M-g s激活格雷普。有关更多信息,请参阅

对于项目搜索,您需要一个库来管理您的项目。这很好。设置并使用C-C p f或C-C p f分别列出当前或所有项目中的文件。哦,默认情况下Sprojector使用ido,但也有helm支持。

您正在查找项目文件的索引。我用了一段时间,但最近已经改用helm recentf

(global-set-key "\C-x\ \C-r" 'helm-recentf)
我将最近的文件设置为大量。几乎所有我打开过的东西都需要几下键盘。这甚至可以作为切换缓冲区的一种简便方法

(require 'recentf)
(setq recentf-auto-cleanup 'never)
(recentf-mode 1)
(setq recentf-max-saved-items 200)
您正在查找项目文件的索引。我用了一段时间,但最近已经改用helm recentf

(global-set-key "\C-x\ \C-r" 'helm-recentf)
我将最近的文件设置为大量。几乎所有我打开过的东西都需要几下键盘。这甚至可以作为切换缓冲区的一种简便方法

(require 'recentf)
(setq recentf-auto-cleanup 'never)
(recentf-mode 1)
(setq recentf-max-saved-items 200)

谢谢你的回复,我没有想到要替换命令,所以我会查一下。我还意识到,由于我使用eclim,它提供了eclim文件定位,我可以使用类似于eclipse的ctrl-shift-r。您列出的方法不仅仅是eclim支持,所以它们在其他方面也会帮助我。FWIW:我不会说避开香草查找文件。我怀疑大多数人在切换到emacs时所做的第一件事是替换find file,而不是它。否则,答案是可以的。FWIW:你可以使用同样的功能,立即显示候选人的行为。您还可以使用TAB获得完整的随需应变行为,这在Emacs环境中并非毫无用处。在Emacs中,有很多很多种给猫剥皮的方法。Emacs默认的开箱即用的普通行为也不错。谢谢你的回复,我没有想到要替换命令,所以我会查一下。我还意识到,由于我使用eclim,它提供了eclim文件定位,我可以使用类似于eclipse的ctrl-shift-r。不过,您列出的方法不仅仅是eclim支持,它们还可以在其他方面帮助我 s、 FWIW:我不会说避开香草查找文件。我怀疑大多数人在切换到emacs时所做的第一件事是替换find file,而不是它。否则,答案是可以的。FWIW:你可以使用同样的功能,立即显示候选人的行为。您还可以使用TAB获得完整的随需应变行为,这在Emacs环境中并非毫无用处。在Emacs中,有很多很多种给猫剥皮的方法。Emacs的默认、开箱即用的普通行为也不错。