emacs命令行为

时间:2013-04-07 03:14:26

标签: emacs clojure

我是emacs的新手。我观看了一个视频,其中显示emacs中的ido与textmate中的命令-t类似:

enter image description here

(视频为:http://vimeo.com/1013263

问题是当我使用ido模式的emacs时,我没有得到这种行为。这是我的init.el

(require 'ido)

(ido-mode t)
(setq ido-enable-flex-matching t)

我不知道t意味着什么,这正是我在网上找到的。

当我搜索文件(C-x C-f)时,它找不到子目录中的文件。因此,如果我有一个文件test/core.clj并且我搜索tc(对于测试核心),它就没有匹配。

关于我注意到的事情是他在截图中有'项目文件:',在那里我得到'查找文件:'。我安装了'find-file-in-project'来查看这是否是缺少的行为,但它也不起作用。它只匹配文件名,而不是包含文件的目录。

3 个答案:

答案 0 :(得分:2)

ido'了解'您访问过的文件并维护历史记录缓存。我相信这就是您在上面的屏幕截图中看到的内容。(有时您会想要使用ido-wash-history清除缓存。)

通常,一旦你在项目中工作了一段时间,它就会按照你期望的方式工作。

如果您是emacs的新用户,则自定义是尝试各种功能的最佳方式。例如您可以M-x customize-group <RET> ido <RET>查看ido的所有选项

还有其他选项,例如find-file-in-project,您确定要实际调用它吗?仅仅安装它是不够的,不会为您重新绑定C-x C-f

尝试M-x find-file-in-project,看看这是否是您想要的行为。

如果你总是在源控制的目录中工作,那么还有find-file-in-repository

('t'表示真btw。)

答案 1 :(得分:1)

我会看看find-file-in-project.el

http://www.emacswiki.org/cgi-bin/wiki/FindFileInProject

它将搜索.git树中的所有文件。我把它映射到C-c f

答案 2 :(得分:0)

“t”只表示非零或真。你可以使用“a”,“w”或“t”,这意味着同样的事情。人们只是按惯例使用t。

启用

如果您想启用.emacs (ido-mode t)

中的内容

禁用

如果您想禁用.emacs (ido-mode nil)

中的内容