/ / Як отримати автозавершення в Emacs для автоматичного завершення виконання і натиснення кнопки - emacs, завершення коду, завершення вкладки, автозавершення

Як отримати автоматичне завершення роботи в Emacs для автоматичного завершення виконання і натиснення кнопки - emacs, кодування, завершення вкладки, автозаповнення

Я використовую автоматичний завершення elisp для emacs. В даний час я використовую його, натиснувши M-TAB, але я хотів би, щоб його також автоматично заповнювали після 4 символів.

Я використовую 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 символів.

EDIT: я намагався

(setq ac-auto-start 4)
(global-set-key (kbd "M-TAB") "ac-start)

я також маю

(global-auto-complete-mode t)

Це все ще не працювало. коли я натискаю M-TAB, у мінібурері він відображає "Нічого не заповнювати".

Відповіді:

1 для відповіді № 1

"ac-mode-map" визначається лише тоді, коли автоматично завершується спливаюче вікно, тому ваш "define-key" вище не буде працювати. Можливо, замість цього використовуйте "global-set-key".

Крім того, я вважаю, що вам потрібно пов'язати це з "ac-start", а не "auto-complete".

Підбиваючи підсумок, спробуйте наступне:

(setq ac-auto-start 4)
(global-set-key (kbd "M-TAB") "ac-start)