zsh의 Emacs 키 바인딩이 작동하지 않음 (Ctrl-A, Ctrl-E)


17

에있는 Emacs 키 바인딩 zsh이 작동하지 않습니다 ( CtrlA, CtrlE). zshOS X에서 사용합니다 .

그들은 다른 것에 묶여있을 수 있습니다. 현재 oh-my-zsh 사용하고 있습니다.

그리고 내가 .zshrc끝난 여기 .

여기에 이미지 설명을 입력하십시오


@rene 완료! 조언을위한 thx! : D
Takehiro Adachi

내가 수집 한 스크린 샷에서 Mac OS X에 있습니까? 터미널에서도 같은 문제가 있습니다. Ctrl + A / E / K는 이미 해당 OS에서 사용되며 (GUI의 텍스트 필드에서 사용)이를 설명 할 수 있습니다.
Henno

@ 헨노? zsh atm을 사용하고 bash를 사용하면 ctrl + a (행의 첫 번째 문자로 이동) 및 ctrl + e (행의 끝으로 이동)가 정상적으로 작동합니다. 하지만 zsh를 사용하면 스크린 샷과 같습니다. 그래서 나는 OS가 아니라 zsh에 대한 문제를 생각한다 :(
Takehiro Adachi

@TakehiroAdachi 당신의 고정도 저를 위해 일했습니다!
Henno

@ 헨노 그레이트 : D!
Takehiro Adachi

답변:


21

문제가 해결되었습니다. oh-my-zsh가 기본 키 바인딩을 재정의 한 것 같습니다.

내 말에 아래 라인을 추가 할 때 .zshrc, CtrlE그리고 CtrlA일 :

bindkey -e

좋아, 나도 일 했어!
Henno

5

일반적으로 말하면 키를 입력하여 키 코드를 찾을 수 있습니다 CtrlV. 그런 다음이 키를 사용 bindkey하여 zsh키보드 기능 (예 :) 에 매핑 할 수 있습니다 beginning-of-line.

특정 경우가 될 것이라고 CtrlV CtrlA하고 CtrlV CtrlE.

그런 다음 코드를 .inputrc, 시스템 /etc/inputrc또는 다음 .zshrc과 같이 넣을 수 있습니다 .

bindkey '^A' beginning-of-line
bindkey '^E' end-of-line

이것은 다른 키에도 적용됩니다. 예를 들어, Home및에 문제가있었습니다 End.

모든 터미널 세션에서이 트릭을 사용할 수 있어야합니다. tty,

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.