2009-12-06 22 views
7

vi'dan emacs'a geçiyorum ve viper ve vimpulse kullanarak, bir pencereye C-w C-w girdiğimde oldukça sinir bozucu oluyor ve diğer arabelle aynı komutla orijinaline geri dönemiyor, Bir yardım arabelleği olabilir, Viper modunda değil. Bunu nasıl düzeltebilirim? Tüm modlarda Viper modu

ben engerek yapılandırmasına diğer modları ekleyebilir ve bunları varsayılan kullanarak kanca tarafından engerek modu ile başlamak yapmaya çalıştı:

(add-to-list viper-vi-state-mode-list 'help-mode) 
(add-hook 'help-mode (lambda() (setq viper-mode t)))

Ama bu komutlar hiçbiri çalışma yaptı. Ayrıca hjkl kullanarak gezinmek mümkün olmayan özledim, C-w C-w yanında

 
Warning (initialization): An error occurred while loading `/home/konrad/.emacs.d/init.el': 

Wrong type argument: symbolp, (fundamental-mode ... 

: Aslında ilki şu hatayı vermiştir. Her mod için tekrar tekrar yazmak yerine, engerek tarafından ayarlanan tuş ayıklamalarını yeniden kullanmanın bir yolu yok mu?

cevap

3

yardımcı modu için şu şekilde görünecektir kanca eklemek için sözdizimi: kanca değişkeni "-hook" ve burada çalışmıyor setq ile adlandırılmıştır

(add-hook 'help-mode-hook (lambda() (viper-mode t))) 

Not viper-mode bir komut olduğu için değişken değil.

Tüm modlar ile viper etkinleştirmek almak mümkün olabilir: Bütün modlar temel-modundan devralan

(add-hook 'fundamental-mode-hook (lambda() (viper-mode t))) 

beri. Bunu gibi değişken viper-vi-state-mode-list alıntı ihmal nedeniyle

+0

Bunların ikisi benim için çalıştı. – Dave

3

hatadır:

(add-to-list 'viper-vi-state-mode-list 'help-mode) 

Eğer 'viper-vi-state-mode-list alıntı gerekir neden olarak this question bakınız. Ne buldum de

(define-key help-mode-map (kbd "C-w C-w") 'vimpulse-cycle-windows) 
+0

, "Bu soruya bakın" bölümünde bir bağlantı olmamalıdır. – Yoo

+0

Bağlantı, en sonuncu-vi-state-mod listesi üzerindeydi, sezgisel olan başka bir bağlantı ekledim. –