2009-12-06 5 views
7

Je passe de vi à emacs et, en utilisant viper et vimpulse, il devient assez ennuyeux quand je C-w C-w à une fenêtre et ne peut pas revenir à l'original avec la même commande, car l'autre tampon, ce qui pourrait être un tampon d'aide, n'est pas en mode Viper. Comment puis-je réparer cela?Mode vipère dans tous les modes

J'ai essayé d'ajouter d'autres modes à la configuration de viper et de les faire commencer par le mode viper par défaut à l'aide de crochets:

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

Mais aucune de ces commandes n'a pas fonctionné. En fait, le premier a donné l'erreur suivante:

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

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

Outre le C-w C-w, je manque aussi de ne pas être en mesure de naviguer à l'aide hjkl. N'y a-t-il pas moyen de réutiliser les raccourcis clavier définis par viper, au lieu de les relancer pour chaque mode?

Répondre

3

La syntaxe pour ajouter le crochet pour aider en mode ressemblerait à ceci:

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

Notez la variable crochet est nommé avec « -hook », et setq ne fonctionne pas ici parce que viper-mode est une commande , pas une variable.

Vous pourriez être en mesure d'obtenir tous les modes pour activer viper avec:

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

puisque tous les modes héritent de mode fondamental.

+0

Ni l'un ni l'autre n'a fonctionné pour moi. – Dave

3

L'erreur est parce que vous avez omis de citer la viper-vi-state-mode-list variables comme ceci:

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

Voir this question pourquoi vous devez citer 'viper-vi-state-mode-list.

Mais, cela n'a pas résolu le problème pour moi, voilà comment je suis arrivé Cw Cw pour travailler comme vous le souhaitez:

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

ne devrait pas y avoir un lien dans "Voir cette question .."? – Yoo

+0

Le lien était sur la 'viper-vi-state-mode-list', j'ai ajouté un autre lien intuitif. –

Questions connexes