2009-12-06 33 views
7

Mi sto spostando da vi a emacs e, usando viper e vimpulse, diventa piuttosto fastidioso quando I C-w C-w in una finestra e non posso tornare a quello originale con lo stesso comando perché l'altro buffer, che potrebbe essere un buffer di aiuto, non è in modalità Viper. Come posso risolvere questo?Modalità viper in tutte le modalità

Ho provato ad aggiungere altre modalità per la configurazione vipera e farli iniziare con la modalità di vipera per default con ganci:

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

Ma nessuno di questi comandi ha funzionato. Infatti, il primo prodotto il seguente errore:

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

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

Oltre C-w C-w, anche io non manca essere in grado di navigare utilizzando hjkl. Non c'è un modo per riutilizzare le combinazioni di tasti impostate da viper, invece di ricollegarle di nuovo per ogni modalità?

risposta

3

La sintassi per l'aggiunta il gancio per aiutare modalità sarebbe simile a questa:

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

Nota la variabile gancio è denominato con "-hook", e setq non funziona qui perché è un comando viper-mode , non una variabile.

Potreste essere in grado di ottenere tutte le modalità per l'attivazione viper con:

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

in quanto tutte le modalità ereditano dalla fondamentale-mode.

+0

Nessuno di questi ha funzionato per me. – Dave

3

L'errore è perché avete trascurato di citare la variabile viper-vi-state-mode-list in questo modo:

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

Vedi this question sul motivo per cui è necessario citare 'viper-vi-state-mode-list.

Ma, che non ha risolto il problema per me, questo è come mi sono Cw Cw a lavorare nel modo desiderato:

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

non dovrebbe esserci un collegamento in "Vedi questa domanda .."? – Yoo

+0

Il collegamento si trovava nell'elenco delle modalità in modalità viper-vi, ho aggiunto un altro link intuitivo. –

Problemi correlati