bash 的「read」中的自訂製表符補全

bash 的「read」中的自訂製表符補全

有沒有辦法將單字清單「匯入」到 bash 的read內建以進行自訂製表符補全?我一直在為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實現這一點。

相關內容