Режим на автоматично завършване на Emacs при стартиране

Просто инсталирам режим на автоматично завършване, но всеки път, когато стартирам emacs, трябва да използвам M-x режим на автоматично завършване. Има ли все пак да се зареди автоматично?

Моят .emacs е както следва:

;; auto-complete
(add-to-list 'load-path "~/.emacs.d/")
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d//ac-dict")
(ac-config-default)

Благодаря


person w00d    schedule 11.11.2011    source източник
comment
Мисля, че има предложено решение в Emacs Wiki. Потърсете real-global-auto-complete-mode и вижте дали това работи за вас.   -  person alexurba    schedule 11.11.2011


Отговори (2)


Мисля, че можете да го направите по различни начини. За да го активирате глобално, трябва да използвате

(global-auto-complete-mode t)

Но той използва auto-complete-mode-maybe, който включва AC само тези, изброени в ac-modes. Можете да ги добавите ръчно по този начин

(add-to-list 'ac-modes 'sql-mode)

Можете да направите свой собствен списък, ако желаете AC да е активен само за няколко режима

(setq ac-modes '(c++-mode sql-mode))

Или го пренапишете, за да има климатик навсякъде.

(defun auto-complete-mode-maybe ()
  "No maybe for you. Only AC!"
  (auto-complete-mode 1))

редактирано:

Автоматичното довършване в минибуфера е лошо. Мисля, че така ще е по-добре.

(defun auto-complete-mode-maybe ()
  "No maybe for you. Only AC!"
  (unless (minibufferp (current-buffer))
    (auto-complete-mode 1)))
person desudesudesu    schedule 11.11.2011
comment
Може да е полезно да посочите, че имате нужда от (require 'auto-complete) някъде преди (global-auto-complete-mode t) да бъде изпълнено. - person William Everett; 18.03.2014
comment
Открих, че (setq ac-modes '(c++-mode sql-mode)) е най-лесният начин (и най-малко двусмислен) да постигна това, което исках. - person Mike Vella; 15.04.2014
comment
Нито една от тези опции не работи за мен на emacs 24.3.1 на Ubuntu x86. Виждам, че състоянието на modelline (AC), но нито една от функциите на AC не работи и знам, че работят, защото го включвах ръчно с помощта на M-x auto-complete-mode. Това, което работи за мен, беше в emacs.stackexchange.com/questions/18982/ - person Sonny; 03.10.2017
comment
Как мога да задам свързване на клавиши за auto-complete-mode-maybe? @desudesudesu - person alper; 01.08.2018

Просто имах нужда от това:

(require 'auto-complete)
(global-auto-complete-mode t)

добавен към моя файл .emacs.d/init.el.

Инсталирах автоматично попълване с мениджъра на пакети. Използвам Emacs 24.

person Frank Henard    schedule 17.04.2013
comment
Моля, предупредете, че дори и при тази настройка, AC режимът няма да бъде включен за всеки режим. Например режимът AC няма да работи в режим ReST без пренаписване на auto-complete-mode-maybe () като приетия отговор. - person xxks-kkk; 19.03.2016
comment
Трябва ли да натисна TAB? @Франк Хенард - person alper; 01.08.2018