2013-04-02 20 views
9

Bir süredir bir sorunum var ve bana gerçek bir baş ağrısı veriyor. Emacs kullanıyorum 24.2.1emacs 24 otomatik tamamlama yasnippet

Bir sonraki kod, otomatik tamamlama için yapılandırmam ve yasnippet olmadan çalıştırdığımda her şey sorunsuz çalışıyor.

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

Bu ince ama otomatik tamamlama c-modu için çalışan durur çalışır yasnippet yasnippets

Bu kodun sonra
(add-to-list 'load-path "~/.emacs.d/yasnippet") 
(require 'yasnippet) 
(yas/global-mode t) 

benim yapılandırması olarak, C++ - mod, java-modu ve php-mod, ama lisp ve python ile çalışıyor (sadece bu dillerle test ettim).

bu değil bu yüzden, ben yasnippet olmadığı zamanlarda otomatik tamamlama iyi çalıştığını anladı Bir süre sonra otomatik tamamlama

(set-default 'ac-sources 
      '(ac-source-abbrev 
       ac-source-dictionary 
       ac-source-yasnippet 
       ac-source-words-in-buffer 
       ac-source-words-in-same-mode-buffers 
       ac-source-semantic)) 

(ac-config-default) 

(dolist (m '(c-mode c++-mode java-mode)) 
    (add-to-list 'ac-modes m)) 

(global-auto-complete-mode t) 

için bu kodu gibi buldum şeyler denedim çözüm. Ayrıca (yas/initialize) ve (yas - başlangıç ​​durumuna getirme)'u denedim, ancak herhangi bir fark yaratmıyor. Ayrıca, otomatik tamamlamadan önce ve sonra yasnippetleri başlatıyorum ve sonuç aynı. Ayrıca, yas/tetikleyici anahtar değişkenini değiştirmeyi denedim ve her zaman aynı sonucu elde ettim. Umarım bana yardım edebilirsin.

+0

Otomatik tamamlama ve yasnippet'in hangi sürümlerini kullanıyorsunuz? Bir keresinde, en son yasnippet ve ac-source-yasnippet birlikte çalışmadı, yine de durumun bu olduğundan emin değilim. Ac-source-yasnippet'i init.el'de sıfırlamıyorum. – jpkotta

+0

Bununla çalışıyor! Teşekkürler, hala biraz daha araştırmaya gidiyorum, çünkü ac-source-yasnippet'in sıfır olmasına ayarlanmış olması garip. Konfigürasyonunuzda herhangi bir sorun yok mu? – silgon

+0

Bu biraz garip, ama benim için sorunlara neden olduğunu düşünmüyorum. Hem yasnippet hem de otomatik tamamlama iyi çalışıyor. Kaynak koduna bakıldığında, kaynakların (yerel tampon olan) kaynaklardan kaldırılması daha doğru olabilir. – jpkotta

cevap

9

jpkotta'nın dediği gibi, ac-source-yasnippet'imi sıfırlamaya ayarladım ve o da buydu.