在尝试自动完成一个文件(例如用 . 打开一个文件C-x C-f)时,Emacs-helm 会显示一个可能的候选列表。
如果我然后按Tab(我希望它会帮助我选择第一个/最接近的匹配项),我会在 minibuffer 中得到以下内容:
看起来迷你缓冲区与转义字符混淆了,它没有选择我真正想要打开的文件(首选)。
Helm 需要从默认的 Emacs 完成中进行这种概念性的跳跃,这并不那么明显:
您无需按任何键即可完成。每次输入后,完成缓冲区都会刷新新结果。
这称为“增量”完成。
tab“增量”完成不需要正常功能。所以选项卡被反弹到helm-select-action
,它允许您通过选择来选择替代操作。但是 中只有一个动作read-file-name
。
不过,您看到的错误可能更清楚,我已在 github 上提交了此问题。
此外,注意 Helm 将每个空格分隔的术语视为过滤正则表达式。因此,按下space foo会将当前列表过滤到名称中包含 foo 的列表。