zsh có một hệ thống hoàn thành, được kích hoạt bằng cách nhấn tab:
llama@llama:~$ git st<Tab>
Completing main porcelain command
stash -- stash away changes to dirty working directory
status -- show working-tree status
Completing plumbing internal helper command
stripspace -- filter out empty lines
Tất cả những gì tôi có thể nhận ra là điều này xuất phát từ kịch bản /usr/share/zsh/functions/Completion/Unix/_git
, _git
lệnh hoàn thành được gọi ở đâu.
Giả sử tôi biết tên của hàm hoàn thành (ví dụ _git
), làm thế nào tôi có thể nhận được đầu ra của những gì sẽ xảy ra nếu tôi nhập một chuỗi nhất định và nhấn tab? Về cơ bản, tôi đang cố gắng lấy đầu vào của ex. git st
và nhận đầu ra ở trên (lập trình, từ một tập lệnh).
Có rất nhiều khác đang tồn tại câu hỏi về này cho bash, nhưng tôi đã không tìm thấy bất cứ điều gì giải thích làm thế nào để đạt được điều này với zsh.