use*_*592 7 emacs autocomplete
我对自动完成非常满意,但有一件事让我感到困惑:
我设置为立即显示内联建议,但菜单延迟0.9秒.我输入前几个字母,例如"del",它立即自动完成内联到"删除".如果我想键入"删除",我会点击TAB,这没关系.但是,如果我想实际输入"del"和换行符,那么RET再次点击自动完成"删除".
RET如果仅显示内联建议,我该如何强制换行?显示自动完成菜单后,我希望它像往常一样再次成为触发键.
谢谢!
通过在auto-complete模式的其他设置之后添加以下行,RET只有在显示完成菜单时才能启用完成:
(define-key ac-completing-map "\C-m" nil)
(setq ac-use-menu-map t)
(define-key ac-menu-map "\C-m" 'ac-complete)
ac-completing-map是一个键盘映射,其中RET默认绑定到ac-complete,而且ac-menu-map是完成菜单上完成一个键盘映射.在ac-menu-map当键盘映射启用ac-use-menu-map变量t.
仅供参考,可以随时按下完成C-g.因此,您也可以点击C-g并RET输入带有RET完整绑定的换行符.此外,您可以使用C-j而不是RET在想要输入换行符时使用.默认情况下C-j不绑定ac-complete.