inputrc는 16 이하에서처럼 우분투 18에서 작동하지 않습니다.

inputrc는 16 이하에서처럼 우분투 18에서 작동하지 않습니다.

저는 .inputrc사용자 디렉터리에 간단한 디렉터리를 만들고 다음을 추가했습니다.

"e[A": history-search-backward
"e[B": history-search-forward
"e[C": forward-char
"e[D": backward-char

배시 다시 로드

exec bash -l

그런 다음 화살표 키를 사용하여 bash 기록을 쉽게 탐색할 수 있습니다.

이제 우분투 18에서는 동일하게 작동하지 않습니다. inputrc 파일을 읽지 않는지 모르겠습니다. 다른 사람도 같은 문제를 겪고 해결책을 찾았습니까?

나는 또한 이 대답을 시도했다~/.inputrc 파일 소스가 잘못되었습니다.

bind -f  ~/.inputrc

하지만 이것은 여전히 ​​나에게 효과가 없습니다 .. :/

답변1

내 생각엔 키 바인딩에 백슬래시 "\"가 필요한 것 같습니다. 하지만 그것이 당신에게 필요한 것인지 모르겠습니다. 저는 데비안을 사용하고 있습니다.

"\e[A": history-search-backward
"\e[B": history-search-forward
"\e[C": forward-char
"\e[D": backward-char

다음은 바인딩이 활성 상태인지 확인하는 방법의 예입니다.

  • 기록 역방향 검색이 설정되어 있는지 확인하세요

    $ bind -p|grep history-search-backward
    # history-search-backward (not bound)
    
  • 어떤 명령에 "\e[A" 키 시퀀스가 ​​있는지 테스트하세요.

    $ bind -p|grep "\\e\[A"
    "\e[A": previous-history
    
  • ~/.inputrc에 새 키 바인딩을 작성하고 다시 로드하세요.

    $ echo '"\e[A": history-search-backward' >> ~/.inputrc
    $ bind -f ~/.inputrc
    
  • 과거 기록 검색이 뒤로 설정되어 있는지 다시 확인하세요.

    $ bind -p|grep history-search-backward
    "\e[A": history-search-backward
    

관련 정보