2013-05-22 11 views

Trả lời

8

Để bật tự động hoàn tất composer trong bash, bạn cần phải viết hàm trả về một mảng giá trị có thể cho tham số đã nhập cuối cùng (_composer() trong trường hợp này) và đăng ký sử dụng complete -F function command.

Là một hoàn chỉnh, ví dụ làm việc thêm dòng sau vào bạn .bashrc (hoặc bất kỳ cấu hình kịch bản khác mà bạn có thể sử dụng)

_composer() 
{ 
    local cur=${COMP_WORDS[COMP_CWORD]} 
    local cmd=${COMP_WORDS[0]} 
    if ($cmd > /dev/null 2>&1) 
    then 
     COMPREPLY=($(compgen -W "$($cmd list --raw | cut -f 1 -d " " | tr "\n" " ")" -- $cur)) 
    fi 
} 
complete -F _composer composer 
complete -F _composer composer.phar 
+0

này đã không làm việc như tôi đã mong đợi, tôi đã mong đợi để có thể cập nhật trình soạn nhạc kiểu w và xem tất cả các gói được cài đặt bắt đầu bằng w. Thay vào đó tôi chỉ nhận được một danh sách các tập tin/thư mục trong thư mục terminal hiện tại của tôi? –

+0

Yup, điều này chỉ tự động hoàn thành các lệnh, chứ không phải các tham số. –