Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.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
如何在Emacs Prelude中创建与现有文件匹配的新文件?_Emacs_Emacs Prelude_Emacs Helm - Fatal编程技术网

如何在Emacs Prelude中创建与现有文件匹配的新文件?

如何在Emacs Prelude中创建与现有文件匹配的新文件?,emacs,emacs-prelude,emacs-helm,Emacs,Emacs Prelude,Emacs Helm,在Emacs Prelude中,当存在与文件名“匹配”的文件时,我无法理解如何创建新文件 在示例屏幕截图中,我试图在已包含名为spawn\u basic.exs的文件的目录中创建名为spawn.exs的文件。当我使用C-xC-f创建一个新文件时,emacs将spawn.exs与spawn\u basic.exs匹配,并点击Enter键,打开spawn\u basic.exs,而不是创建spawn.exs 我尝试了一些变通方法(即使用touch创建文件),但我正在寻找一种只需要一个命令的更简单的

在Emacs Prelude中,当存在与文件名“匹配”的文件时,我无法理解如何创建新文件

在示例屏幕截图中,我试图在已包含名为
spawn\u basic.exs
的文件的目录中创建名为
spawn.exs
的文件。当我使用C-xC-f创建一个新文件时,emacs将
spawn.exs
spawn\u basic.exs
匹配,并点击Enter键,打开
spawn\u basic.exs
,而不是创建
spawn.exs


我尝试了一些变通方法(即使用
touch
创建文件),但我正在寻找一种只需要一个命令的更简单的解决方案。如果没有命令执行此操作,是否有方法禁用Prelude中的文件名匹配功能?与普通的Emacs相比,我喜欢Prelude的其他大部分功能,所以我不想切换回去。

在Prelude中,
C-x C-f
绑定到
helm find files
。通常是 很好,但是对于这种情况,我看不到绕过的好方法 其匹配(如您所述)

但是,
ido find file
有一个类似的友好的完成系统, 然而,它提供了一个很好的解决方案来绕过完成。你打字的时候
spawn.exs
,按
C-j
打开,而不是按
RET
。我认为赫尔姆 你也应该这样做(而不是同样对待他们),所以你可能 想要提交功能请求(以匹配Ido的“逐字输入”)

Ido作为
查找文件
的替代品工作得很好,建议在 在这种简单的情况下掌舵 在里面所以你可以 将其重新映射为:

(global-set-key (kbd "C-x C-f") 'ido-find-file)

我在第二段中尝试了你的建议,用C-j代替RET有效!因此,helm find文件似乎确实尊重C-j的“逐字输入”。谢谢你的回答!