단일 명령줄 인수를 사용하는 작은 쉘 스크립트를 작성했습니다.
매개변수 작성을 시작할 때 자동 완성을 원합니다. 자동 완성 선택 항목은 특정 텍스트 파일에서 나와야 합니다.
예를 들어, 내 텍스트 파일에 다음이 포함되어 있다면
foo
foobar
글쓰기를 시작 my-cli fo
하고 I like zsh를 누르면 TAB
선택 항목 foo
과 foobar
.
관련 문서나 튜토리얼에 대한 조언을 환영합니다.
답변1
비슷한 문제로 어려움을 겪고 있지만 좀 더 복잡합니다. 정적 자동 완성 옵션 파일을 사용하면 다음 코드가 저에게 효과적이었습니다.
#compdef test
_test_comp(){
t=($(cat /tmp/file_with_opts))
_wanted t expl "availavle options" compadd -a t
}
_arguments -C -S \
'*:test_autocomplete:_test_comp'
이런 식으로 스크립트는 test
다음에서 옵션을 얻습니다./tmp/file_with_opts