bash vi 키 바인딩: 키를 매핑할 수 있나요? 디스플레이 모드(삽입 및 명령)?

bash vi 키 바인딩: 키를 매핑할 수 있나요? 디스플레이 모드(삽입 및 명령)?

저는 오랫동안 vi(m) 사용자였으며 최근 bash에서 vi 키 바인딩을 사용하도록 전환했습니다. 이것이 개선이 될 것이라고 이미 말할 수 있지만 실제로 능숙해지기 위해 몇 가지 사항을 사용자 정의하고 싶습니다.

  1. 나는 현재 다음 매핑을 사용하고 있으며 완전히 확고히 자리 잡고 있습니다 map ii <esc>. 명령줄에서도 동일한 작업을 수행할 수 있나요? 사소한 것처럼 보일 수도 있지만 i를 두 번 두드리는 데 너무 익숙해서 ESC 키까지 도달하는 것이 고통스럽습니다.
  2. 나는 현재 어떤 모드에 있는지(삽입 또는 명령) 표시하는 방법을 찾고 싶습니다. 커서 유형/색상 변경, 프롬프트에 메모 입력 등의 작업을 수행할 수 있습니다.

나는 bash에 대한 매뉴얼 페이지를 살펴보고 .inputrc 파일 생성을 살펴보았지만 지금까지 작동할 만한 것을 찾지 못했습니다. 키를 매핑할 수 있다는 것을 알지만, 저처럼 빠르게 연속해서 두 개의 키를 누르는 경우에도 그렇게 할 수 있나요?

나는 zsh에서 작동한다고 말하는 솔루션을 보았습니다. zsh로 전환하는 데 관심이 없습니다. bash에서 이것이 가능하지 않다면 나는 그것으로 살 수 있습니다.

답변1

귀하의 첫 번째 요청은 다음을 통해 가능합니다.그래서 대답링크됨pb2q'에스논평귀하의 게시물에.

이제 bash 4.3 및 readline 6.3이 있으면 두 번째 요청이 가능합니다. 다음 항목에 간단히 추가하세요 .inputrc.

set show-mode-in-prompt on

나에게는 삽입 모드에서는 프롬프트 앞에 "+"가 추가되고 명령 모드에서는 ":"으로 변경됩니다.

원천:이 답변~에 의해eMPee584StackOverflow에서.

관련 정보