Bash의 `읽기`에서 사용자 정의 탭 완성

Bash의 `읽기`에서 사용자 정의 탭 완성

read사용자 정의 탭 완성을 위해 단어 목록을 bash의 내장으로 "가져오는" 방법이 있습니까 ? 저는 suckless의 미니멀 IRC 클라이언트 "ii"에 대한 래퍼 스크립트를 작성해 왔는데 탭으로 닉을 완성할 수 있는 방법이 없습니다.

답변1

bash나는 그렇게 할 수 없다고 확신합니다 . 하지만zsh

foo() { 
 local -a compcontext
 compcontext=( ${(f)"$(</tmp/names)"} )
 vared -c -p 'Enter in user: ' user
}

각 줄에 단일 이름이 있는 파일에서 일치 목록을 생성합니다.

또는 읽는 입력이 아닌 읽을 단어를 완성하려는 경우; bash에서 complete -W "$(</tmp/names)" read이를 수행할 것입니다.

관련 정보