2016-12-30 5 views
0

Je viens de commencer à utiliser vim dans mes emacs. Alors que la plupart des docs/wikis proposent d'activer globalement le mode maléfique, moi, étant un utilisateur d'emacs au premier démarrage, je préfère vraiment garder le mode maléfique local. Cela signifie que lorsque j'ai besoin d'éditer un modèle, je vais activer le mode maléfique dans ce tampon local. J'ai écrit un morceau de elisp pour activer/désactiver le mode mal à cet effet:`C- [` n'échappe pas au mode insertion en mode local malveillant

(defun toggle-evil-local-mode() 
"Toggle on and off evil mode in local buffer." 
(interactive) 
(if evil-local-mode 
    (turn-off-evil-mode) 
    (turn-on-evil-mode))) 

(global-set-key (kbd "s-e") 'toggle-evil-local-mode) 

Cependant, il y a une chose qui me dérange. Je ne peux pas utiliser C-[ pour échapper de l'insertion ou du mode visuel en mode normal (emacs lit la frappe comme ESC- et attendre plus de saisie dans la zone d'écho), la touche Esc fonctionne bien cependant. Mais si j'active le mode mal globalement, C-[ fonctionne exactement de la même manière que la touche Esc.

Vous remarquerez peut-être que j'utilise un Mac à partir de la reliure. Alors que je peux utiliser la clé Esc actuellement, mais que se passe-t-il si je passe à un nouveau MBP avec ces barres tactiles maléfiques dans le futur? Alors, y a-t-il un moyen de résoudre ce problème? N'hésitez pas à nous faire part de vos suggestions.

+0

Vim. Ou Vim pas. Il n'y a pas d'essai :-) – paxdiablo

Répondre

0

Cela ressemble à un bug dans le mal. Faites-moi savoir si cela fonctionne:

(defun turn-on-evil-mode-fixed-escape() 
    "Turn on Evil in the current buffer AND `evil-esc-mode'. This makes C-[ work 
like <escape> when using `evil-local-mode'." 
    (interactive) 
    (turn-on-evil-mode) 
    (evil-esc-mode 1)) 
+0

Merci pour la réponse. Il a résolu mon problème :) – Daniel

+0

@Daniel Sure chose! Si cela a résolu votre problème, pouvez-vous cliquer sur la coche à gauche? Cela marquera la question comme «résolue» quand elle est montrée à divers endroits sur le site. –