需要在init.el文件中进行哪个设置,如果命中M-x和命令的首字母,则允许完成剩下的命令。
实际上需要类似于迷你缓冲的ido模式
答案 0 :(得分:3)
“M-x minifuffer”的偶像模式叫做smex(smex use ido)。
可在Emacs的主程序包中使用。主页here
答案 1 :(得分:1)
我认为您正在谈论增量完成,即让Emacs自动完成您在迷你缓冲区中输入的内容,而无需明确请求完成(例如,使用TAB
)。
Icicles以及Ido和IswitchB提供了增量完成功能。 icomplete-mode
以与Ido和IswitchB类似的方式向您展示完成候选人。
Icicles incremental completion有两个方面:
当缓冲区 *Completions*
显示并更新时,显示符合您输入的候选人 - 发生的时间和触发更新的内容
您的迷你缓冲输入是否以及扩展(已完成)以反映匹配的完成次数
Wrt *Completions*
显示(#1):
您可以随时使用C-#
在各级(正常,急切,关闭)之间循环。
正常表示在您要求之前不会显示*Completions*
,但此后在您输入/编辑输入时会自动更新*Completions*
。
Eager 表示只要您输入与至少两个候选人匹配的内容,就会显示*Completions*
。
(在您输入任何内容之前,还有一个选项可以从一开始就显示*Completions*
- 作为一种菜单很有用。)您还可以指定在输入或删除字符之前等待多长时间更新S-TAB
。
Wrt输入扩展(#2):
Icicles 在将输入扩展到(通常)所有完成中的longest common match时是唯一的,即使完成时使用 apropos 匹配(即regexp或substring - TAB
),而不仅仅是前缀匹配(TAB
)。
此扩展有4个级别/行为,加上关闭(无扩展):
S-TAB
或TAB
)S-TAB
,根据请求TAB
- S-TAB
尽可能扩展; C-"
就像以前一样 C-M-"
在您选择的两个输入扩展行为(用户选项)之间切换,并且{{1}}在所有行为中循环。