emacs autocomplete

emacs melpa



Autocompletar de Emacs: no activar en RET en sugerencia en línea (1)

Estoy muy contento con el autocompletado, pero una cosa me molesta:

Estoy configurado para mostrar la sugerencia en línea de inmediato, pero el menú con 0,9 s de retraso. Escribo las primeras letras, por ejemplo, "del", que se completan de inmediato automáticamente en línea para "eliminar". Si quería escribir "borrar", presiono TAB y está bien. Pero, ¿qué pasaría si realmente quisiera escribir "del" y una línea nueva, aquí presionando RET nuevamente se completa automáticamente para "eliminar".

¿Cómo puedo forzar que RET sea ​​una nueva línea si solo se muestra una sugerencia en línea? Una vez que se muestra el menú de autocompletar, quiero que vuelva a ser la clave de activación como siempre.

¡Gracias!


Al agregar las siguientes líneas después de otras configuraciones para el modo de auto-complete , puede habilitar la finalización mediante RET solo cuando se muestre el menú de finalización:

(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 es un ac-completing-map teclas donde RET se vincula de forma predeterminada a ac-complete , y ac-menu-map es un ac-menu-map teclas para completar en el menú de finalización. El ac-menu-map teclas ac-menu-map está habilitado cuando la variable ac-use-menu-map es t .

Para su información, la finalización puede detenerse presionando Cg en cualquier momento. Entonces también podrá presionar Cg y RET para ingresar a una nueva línea con las ataduras de RET intactas. Además, puede usar Cj en lugar de RET cuando desee ingresar una nueva línea. Cj no se une a ac-complete de manera predeterminada.