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;

관련 정보