2011-11-11 20 views
27

मैं बस ऑटो-पूर्ण-मोड स्थापित करता हूं, हालांकि हर बार जब मैं emacs शुरू करता हूं तो मुझे एम-एक्स ऑटो-पूर्ण-मोड होना पड़ता है। क्या यह स्वचालित रूप से लोड होने के लिए वैसे भी है? मुझे लगता है कि आप विभिन्न तरीकों से यह कर सकते हैंस्टार्टअप पर 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) 

धन्यवाद

+0

मुझे लगता है कि [Emacs विकी] (http://www.emacswiki.org/emacs/AutoComplete) में सुझाए गए समाधान का समाधान है। वास्तविक-वैश्विक-ऑटो-पूर्ण-मोड के लिए खोजें और देखें कि यह आपके लिए काम करता है या नहीं। – alexurba

उत्तर

42

: इस प्रकार

मेरे .emacs है। यह विश्व स्तर पर सक्षम करने के लिए आप

(global-auto-complete-mode t) 

का उपयोग करना चाहिए लेकिन यह स्वत: पूर्ण-मोड-शायद है, जो केवल ac-modes में सूचीबद्ध उन पर एसी बारी का उपयोग करता है। तुम सिर्फ इस

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

की तरह उन्हें मैन्युअल रूप से जोड़ सकते हैं अगर आप एसी केवल कुछ मोड

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

या यह फिर से लिखने एसी हर जगह के लिए सक्रिय रहना चाहते हैं तो आप अपनी स्वयं की सूची बना सकते हैं।

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

संपादित: minibuffer में

स्वत: पूर्ण बुरा है। मुझे लगता है कि यह बेहतर होगा।

(defun auto-complete-mode-maybe() 
    "No maybe for you. Only AC!" 
    (unless (minibufferp (current-buffer)) 
    (auto-complete-mode 1))) 
+2

यह इंगित करने में मददगार हो सकता है कि आपको '(ग्लोबल-ऑटो-पूर्ण-मोड टी) निष्पादित होने से पहले' (आवश्यकता 'ऑटो-पूर्ण) की आवश्यकता है। –

+0

मुझे '(सेटक एसी-मोड '(सी ++ - मोड एसक्यूएल-मोड) मिला) जो मैं चाहता था उसे पूरा करने का सबसे आसान तरीका (और कम से कम संदिग्ध) होना था। –

+0

इन विकल्पों में से कोई भी मेरे लिए उबंटू x86 पर emacs 24.3.1 पर मेरे लिए काम नहीं करता है। मैं देखता हूं कि मॉडलिन ('एसी') पर स्थिति लेकिन एसी सुविधाओं में से कोई भी काम नहीं करता है, और मुझे पता है कि वे ऐसा करते हैं क्योंकि मैं इसे' एम-एक्स ऑटो-पूर्ण-मोड 'का उपयोग करके मैन्युअल रूप से चालू करता था। मेरे लिए क्या काम किया गया https://emacs.stackexchange.com/questions/18982/how-do-i-make-auto-complete-enabled-by-default – Sonny

19

मैं सिर्फ यह की जरूरत:

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

मेरी .emacs.d/init.el फ़ाइल को जोड़ा गया।

मैंने पैकेज प्रबंधक के साथ ऑटो-पूर्ण स्थापित किया। मैं Emacs 24 का उपयोग कर रहा हूँ।

+0

यह मेरे लिए काम करता था, लेकिन दूसरा नहीं। धन्यवाद। –

+1

कृपया इस सेटिंग के साथ भी अलर्ट करें, प्रत्येक मोड के लिए एसी मोड चालू नहीं किया जाएगा। उदाहरण के लिए, एसी मोड रीस्ट मोड में काम नहीं करेगा, बिना स्वीकार्य उत्तर की 'ऑटो-पूर्ण-मोड-शायद() '' को फिर से लिखने के बिना। – zack