나는 이맥스에 자동 완성 elisp를 사용하고있다. 현재 M-TAB을 눌러서 사용하고 있지만 4 자 후에 자동 완성되기를 바랍니다.Emacs에서 자동 완성을 얻고 버튼을 누를 때 자동 완성을 얻는 방법
자동 완성을위한 소스로 yasnippet을 사용합니다. 그래서 4 문자 뒤에 자동 완성되도록 설정하면 if, for, inc, main과 같은 완료를 표시하지 않습니다.
자동 완료를 시작하도록 설정하면 입력 한대로 변경됩니다.
내가 바인딩하고 4 자 후 자동 완성을 시작 말할 키를 설정하면 키 - 바인딩을 무시하고 때가 완료 될 때까지 내가 좋아하는 것
(setq ac-auto-start 4)
(define-key ac-mode-map (kbd "M-TAB") 'auto-complete)
완료 시작되지 않습니다 M-TAB을 누르거나 4자를 누릅니다.
편집
: 나는 나는 또한 그것은 여전히 작동하지 않았다(global-auto-complete-mode t)
이
(setq ac-auto-start 4)
(global-set-key (kbd "M-TAB") 'ac-start)
을 시도했다. M-TAB을 누르면 미니 버퍼에서 "아무 것도 완료되지 않음"이 표시됩니다.
나는 그게 사실이라고 생각하지 않습니다. 'ac-complete-mode-map'은 팝업이 보여 질 때만 사용할 수있는지도입니다. 'ac-mode-map'은 자동 완성 모드를 활성화했을 때 사용할 수있는 맵입니다. 이 기능을 활성화하면 질문에 작성한 코드가 제대로 작동합니다. '(global-auto-complete-mode t) ' – pheaver
다시 정정되었습니다. 모드 맵. 왜 우리 제안 중 어느 것도 유해물에 효과가없는 이유는 알 수 없습니다. – sanityinc
이 방법이 저에게 맞는지 확인합니다. –