키 시퀀스를 이스케이프, zsh에 바인딩


11

어떻게지도 할 jjEsczsh을에?

나는 내가 한 정력에 설정을 가지고있는 키 매핑을 다시 시도하고 jj매핑 ESCI를 두 번 눌러 때마다 너무 j, 그것은 보내는이 <Esc>나를 더 편리 일반 모드를 입력 할 수 있도록 - 정력합니다.

나는 이미 시도했지만 bindkey 'jj' ^[시도하려고 bindkey 'jj' ^[[하지만 그것이 효과가 있을지는 의문이다. 또한 일반 모드에서 zsh을에 의해 제공되는 명령의 목록을 확인,하지만 난 포함 아무것도 보지 않았다 normal또는 escape.

참고 내 파일
^[문자 ~/.zshrc는 실제 하드 코드 된 이스케이프입니다. 뿐만 아니라 문자 ^[.

답변:


12

-s위젯 대신 실제 문자열을 바인딩 해야 합니다.

bindkey -s jj '\e'

당신은 아마 매핑 할 비록 jj받는 vi-cmd-mode여기에 위젯 :

bindkey jj vi-cmd-mode

(정상 / 명령 모드가 아닌 삽입 모드에서 바인딩을위한 것입니다)


1
두 번째는 매력처럼 작동합니다. 감사합니다!
Alexej Magura

2
참고 설정 KEYTIMEOUT이 키 바인딩을 깨뜨리는 것 같습니다.
Alexej Magura

@AlexejMagura 추가 : KEYTIMEOUT을 너무 낮게 설정하면 zle이 더블 프레스를 인식하지 못합니다.
UltraMaster
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.