Bash vi 모드 구성을 기본값으로 명령 모드로 설정


14

처음 에 삽입 모드가 아닌 명령 모드 에 있도록 bash vi 모드를 구성 할 수 있습니까? 너무 많이 눌러야한다는 것을 알았 습니다. zsh에서 이것을 지정할 가능성이있는 것 같지만 bash / readline에서 이것을 수행하는 방법을 찾지 못했습니다.Esc

답변:


2

표준 GNU Readline Library를 사용하는 것이 가능하다고 생각하지 않습니다 .

그러나 xdotool 을 사용 하여 간단한 해킹으로 동일한 효과를 얻을 수 있습니다. 키 누르기 .bashrc를 시뮬레이트 하는 명령을 명령에 추가하면 Escape용어가 명령 모드에서 열립니다.

xdotool key Escape

--delay프롬프트가 뭉치지 않도록 스위치 와 함께 약간의 지연을 사용하고 싶을 수 있습니다 ...

참고 이 예상보다 더 좌절 도입 가능성 : 단자 입력을 수용하도록 설계됩니다; 그것을 깨는 것은 (약간 있지만) 그런 좋은 생각을 증명하지 못할 수도 있습니다 ...


1

다시 가져 가면 커서 이동으로 작동하지 않습니다. 그것은 작동하지만 재미있는 행동으로, 그것을 꺼내면 :PS1="$PS1 ^[


PS1프롬프트를 변경하십시오 .

PS1="test $ \[^[[s^[^[[u\]"

^[리터럴 이스케이프 ( Ctrl+ V Esc) 는 어디에 있습니까 ?

중간에 이스케이프가 명령 모드로 변경되고 ^[[s, ^[[u이스케이프가 커서 위치를 저장하고 복원합니다. 그것 없이는 재미있는 행동이 있다는 것을 알았습니다.


1

대답은 ' 아니요' 입니다. 관련 bash 소스 파일은bashline.c


-1

시험 set +o vi

set -o vi 다시 편집 모드로 전환됩니다.

http://tldp.org/LDP/abs/html/options.html


그것은 작동하지 않습니다 : 그것은 vi 모드를 해제합니다 ...
jasonwryan

그래 시도했다. 권리. vim을 사용하여 키의 cmap (reference : help mode-switching in vim)을 변경하십시오 Esc. 의 기본 상응하는 매핑 Esc입니다Ctrl + ]
Nikhil Mulley

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