Bạn có thể bật tính năng hoàn thành dòng lệnh (còn gọi là hoàn thành thẻ) trong Bash và Zsh. Điều này cho phép bạn hoàn thành tên lệnh bằng phím tab, gắn cờ tên và giá trị cờ cũng như tên mục tiêu.
Bash
Bazel viết một tập lệnh hoàn thành Bash.
Nếu bạn đã cài đặt Bazel:
Từ kho lưu trữ APT thì bạn đã hoàn tất – tập lệnh hoàn thành Bash đã được cài đặt trong
/etc/bash_completion.d
.Trên Homebrew thì bạn đã hoàn tất – tập lệnh hoàn thành Bash đã được cài đặt trong
$(brew --prefix)/etc/bash_completion.d
.Trong trình cài đặt được tải xuống từ GitHub, sau đó:
Xác định đường dẫn tuyệt đối của tệp hoàn thành. Trình cài đặt đã sao chép tệp đó vào thư mục
bin
.Ví dụ: nếu bạn chạy trình cài đặt bằng
--user
, giá trị này sẽ là$HOME/.bazel/bin
. Nếu bạn đã chạy trình cài đặt ở cấp độ gốc, thì trình cài đặt này sẽ là/usr/local/lib/bazel/bin
.Thực hiện một trong các hành động sau:
Sao chép tệp này vào thư mục hoàn thành của bạn (nếu có).
Ví dụ: Trên Ubuntu, đây là thư mục
/etc/bash_completion.d
.Hoặc lấy nguồn tệp hoàn thành từ tệp RC của Bash.
Thêm một dòng tương tự như bên dưới vào
~/.bashrc
(trên Ubuntu) hoặc~/.bash_profile
(trên macOS), sử dụng đường dẫn đến đường dẫn tuyệt đối của tệp hoàn thành:source /path/to/bazel-complete.bash
Thông qua tính năng khởi động, sau đó:
Tạo tập lệnh hoàn thành:
bazel build //scripts:bazel-complete.bash
Tệp hoàn thành được tạo trong
bazel-bin/scripts/bazel-complete.bash
.Thực hiện một trong các hành động sau:
Sao chép tệp này vào thư mục hoàn thành (nếu có).
Ví dụ: trên Ubuntu, đây là thư mục
/etc/bash_completion.d
Sao chép tệp đó vào một nơi nào đó trên ổ đĩa cục bộ của bạn, chẳng hạn như vào
$HOME
và lấy nguồn tệp hoàn thành từ tệp RC của Bash.Thêm một dòng tương tự như bên dưới vào
~/.bashrc
(trên Ubuntu) hoặc~/.bash_profile
(trên macOS), sử dụng đường dẫn đến đường dẫn tuyệt đối của tệp hoàn thành:source /path/to/bazel-complete.bash
Tiếng Zsh
Bazel viết sẵn một tập lệnh hoàn thành Zsh.
Nếu bạn đã cài đặt Bazel:
Từ kho lưu trữ APT thì bạn đã hoàn tất – tập lệnh hoàn thành Zsh đã được cài đặt trong
/usr/share/zsh/vendor-completions
.Nếu bạn có
.zshrc
được tuỳ chỉnh nhiều nhưng tính năng tự động hoàn thành không hoạt động, hãy thử một trong các giải pháp sau:Thêm phần sau vào
.zshrc
của bạn:zstyle :compinstall filename '/home/tradical/.zshrc' autoload -Uz compinit compinit
hoặc
Hãy làm theo hướng dẫn tại đây
Nếu đang sử dụng
oh-my-zsh
, bạn nên cài đặt và bật trình bổ trợzsh-autocomplete
. Nếu bạn không muốn, hãy sử dụng một trong các giải pháp được mô tả ở trên.Trên Homebrew thì bạn đã hoàn tất – tập lệnh hoàn thành Zsh đã được cài đặt trong
$(brew --prefix)/share/zsh/site-functions
.Trong trình cài đặt được tải xuống từ GitHub, sau đó:
Xác định đường dẫn tuyệt đối của tệp hoàn thành. Trình cài đặt đã sao chép tệp đó vào thư mục
bin
.Ví dụ: nếu bạn chạy trình cài đặt bằng
--user
, giá trị này sẽ là$HOME/.bazel/bin
. Nếu bạn đã chạy trình cài đặt ở cấp độ gốc, thì trình cài đặt này sẽ là/usr/local/lib/bazel/bin
.Thêm tập lệnh này vào một thư mục trên
$fpath
của bạn:fpath[1,0]=~/.zsh/completion/ mkdir -p ~/.zsh/completion/ cp /path/from/above/step/_bazel ~/.zsh/completion
Có thể bạn phải gọi
rm -f ~/.zcompdump; compinit
trong lần đầu tiên để mã này hoạt động.Thêm nội dung sau vào .zshrc (không bắt buộc).
# This way the completion script does not have to parse Bazel's options # repeatedly. The directory in cache-path must be created manually. zstyle ':completion:*' use-cache on zstyle ':completion:*' cache-path ~/.zsh/cache