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. Việc này cho phép bạn điền tên lệnh, tên cờ và giá trị cờ cũng như tên mục tiêu.
Bi-a
Bazel có 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, bạn đã hoàn tất – tập lệnh hoàn thành Bash đã được cài đặt trong
/etc/bash_completion.d
.Từ Homebrew, 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
.Từ trình cài đặt được tải xuống qua 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 vào thư mục
bin
.Ví dụ: nếu bạn đã chạy trình cài đặt bằng
--user
, đây sẽ là$HOME/.bazel/bin
. Nếu bạn đã chạy trình cài đặt dưới dạng thư mục gốc, thì đâ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 (nếu có).
Ví dụ: trên Ubuntu, đây là thư mục
/etc/bash_completion.d
.Hoặc tìm tệp hoàn thành từ tệp RC của Bash.
Thêm một dòng tương tự như dòng 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
Qua khởi động, bạn có thể:
Xây dựng 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 đó ở đâu đó trên ổ đĩa cục bộ của bạn, chẳng hạn như vào
$HOME
, và tìm 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ư dòng 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
Zsh
Bazel có tập lệnh hoàn thành Zsh.
Nếu bạn đã cài đặt Bazel:
Từ kho lưu trữ APT, 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 tùy chỉnh nhiều và 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 đây:Thêm nội dung sau vào
.zshrc
của bạn:zstyle :compinstall filename '/home/tradical/.zshrc' autoload -Uz compinit compinit
hoặc
Làm theo hướng dẫn tại đây
Nếu đang sử dụng
oh-my-zsh
, bạn có thể muố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.Từ Homebrew, 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
.Từ trình cài đặt được tải xuống qua 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 vào thư mục
bin
.Ví dụ: nếu bạn đã chạy trình cài đặt bằng
--user
, đây sẽ là$HOME/.bazel/bin
. Nếu bạn đã chạy trình cài đặt dưới dạng thư mục gốc, thì đây sẽ là/usr/local/lib/bazel/bin
.Thêm tập lệnh này vào 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
Bạn có thể phải gọi
rm -f ~/.zcompdump; compinit
lần đầu tiên để làm cho việc này hoạt động.Nếu muốn, bạn có thể thêm đoạn mã sau vào tệp .zshrc.
# 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