2016-12-30 11 views
0

방금 ​​내 이맥에서 정력을 사용하기 시작했습니다. Docs/wiki의 대부분은 악의적 인 모드를 세계적으로 촉발시키는 것을 제안하지만, 처음에는 이맥스 사용자가되어서 악의 모드를 로컬에 유지하는 것을 선호합니다. 즉, 모델 편집이 필요할 때 해당 로컬 버퍼에서 악의적 인 모드를 켭니다. 나는이 목적을 위해 온/오프 악 모드에 전환 elisp의 조각을 썼다 :`C- [`악한 로컬 모드에서 삽입 모드에서 벗어나지 않습니다.

(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) 

그러나, 한 가지입니다 날 귀찮게. 나는 C-[을 삽입 모드 나 시각 모드에서 일반 모드로 탈출 할 수 없다. (이맥스는 키 입력을 ESC-으로 읽고 에코 영역에서 더 많은 입력을 기다리고있다.) Esc 키는 잘 동작한다. 하지만 악의적 인 모드를 세계적으로 켜면 C-[Esc 키와 똑같이 작동합니다.

키 바인딩에서 Mac을 사용하고있는 것을 볼 수 있습니다. 현재 Esc 키를 사용할 수는 있지만 향후 악의적 인 터치 바를 사용하여 새 MBP로 업그레이드하면 어떻게됩니까? 그래서이 문제를 해결할 수있는 방법이 있습니까? 모든 제안을 주시면 감사하겠습니다.

+0

Vim. 또는 Vim 아닙니다. 시도가 없습니다 :-) – paxdiablo

답변

0

악의 버그처럼 보입니다. 이게 작동하는지 알려주세요.

(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

답변 해 주셔서 감사합니다. 그것은 내 문제를 해결 :) – Daniel

+0

@ 대니얼 물론! 문제가 해결되면 왼쪽의 체크 표시를 클릭 할 수 있습니까? 그러면 사이트의 여러 위치에 표시 될 때 '해결 된'것으로 표시됩니다. –