.inputrc 탭이 예상대로 작동하지 않습니다.

.inputrc 탭이 예상대로 작동하지 않습니다.

오늘은 너무 바빠서 또 다른 질문이 있습니다.

내가 넣었을 때 왜 .inputrc모두 같은 일을합니까 ?

TAB: menu-complete
Shift-TAB: menu-complete-reverse

즉, 그들은 모두 마지막 항목이 말한 대로 수행합니다.

답변1

Readline은 명명된 수정자에 대해 아무것도 모르고 Shift알려지지 않은 수정자 이름을 자동으로 무시합니다. 노력하다 wibble-TAB.

작업을 Shift+ 에 바인딩하려면 Tab터미널에서 보낸 이스케이프 시퀀스를 찾아야 합니다. Bash에서 실행 cat하고 Ctrl+를 입력한 V다음 Shift+를 입력합니다 Tab. 문자 그대로 이스케이프 시퀀스가 ​​삽입됩니다. 첫 번째 문자는 다음과 같이 이스케이프 문자일 가능성이 높습니다 ^[. 터미널마다 이스케이프 시퀀스가 ​​다르지만 일반적인 가능성은 ␛[Z(예: 이스케이프, 왼쪽 대괄호, 대문자 Z) 및 ␛␉(예: 이스케이프, 탭)입니다. ~/.inputrc( \e이스케이프 문자가 표시되는 위치) 에 키를 적절하게 바인딩합니다 .

"\e\t": menu-complete-backward
"\e[Z": menu-complete-backward

답변2

Xubuntu 16.04에서 터미널: xfce4-terminal 0.6.3, 쉘: bash

Shift+ 작업을 수행하려면 Tab다음을 사용해야 합니다.

bind '"\e[Z": menu-complete-backward'

관련 정보