vim의 일반적인 동작은 삽입 모드의 C-o
에 대해 사용자가 하나의 정상 모드 명령을 사용하고 삽입 모드로 돌아갈 수 있도록합니다. 이 comment의 제안에 따라Vimpulse에서 Ctrl-o를 사용하여 단일 표준 모드 명령을 실행 하시겠습니까?
, 나는
(vimpulse-imap "\C-o" 'viper-escape-to-vi)
를 설정 한하지만 삽입 모드에서
C-o
을 누를 때, 문자 "^ O"는 버퍼에 삽입하고 나는로 전환 할 수 없습니까 예상대로 한 명령에 대한 정상 모드. 나는
viper-escape-to-vi
이 기본적으로
C-z
에 바인딩되어 있음을 이해하지만이 키 조합 ("^ Z"가 버퍼에 대신 인쇄 됨)을 사용하여 일반 모드로 전환 할 수도 없습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
또한 두 번째 질문 : 내가 elscreen 용으로 사용하는 것처럼 viper-mode (또는 vimpulse)에 의해 바운드되지 않기를 바랍니다. C-z
만 남겨 두도록하려면 어떻게해야합니까?
편집 : 찾을 수 vimpulse - 기타 - keybindings.el 코드의이 비트 :
;; temporarily escape to vi state
(define-key viper-insert-basic-map "\C-o" 'viper-escape-to-vi)
그래서 이미 정의해야 하는가? 왜 작동하지 않는지 잘 모릅니다.
'emacs -Q'로 emacs를 시작한 다음 viper 또는 vimpulse를로드해도 (vipi-toggle-key'를 선험적으로 설정), 동일한 문제가 발생합니다. git 저장소에서 만든 OS X에서 Emacs 24를 사용하고 있습니다. 아마도 이것이 문제 일 수 있습니다. 나는 악에 대해 몰랐다. 아직 성숙하지 않은 것 같지만 'C-o'는 상자에서 꺼내 사용할 수있다! – hatmatrix
예, 그럴 수 있습니다. emacs-dev 메일 링리스트에 도움을 요청해야합니다. Evil은 시간적으로 성숙하지는 않지만 상당히 안정적이며 기능이 완벽합니다 (vimpulse와 비교 - 광범위한 문서 제외). –