您可以在 Bash 和 Zsh 中啟用指令列完成功能 (也稱為 Tab 鍵完成功能)。這樣一來,您就能使用 Tab 鍵完成指令名稱、旗標名稱和旗標值,以及目標名稱。
Bash
Bazel 隨附 Bash 完成指令碼。
如果您已安裝 Bazel:
從 APT 存放區完成後,您就完成了,因為 Bash 完成指令碼已安裝在
/etc/bash_completion.d
中。從 Homebrew 開始,您就完成了 - Bash 完成指令碼已在
$(brew --prefix)/etc/bash_completion.d
中安裝。從 GitHub 下載的工具程式:
找出完成檔案的絕對路徑。安裝程式會將其複製到
bin
目錄。範例:如果您使用
--user
執行安裝程式,則會是$HOME/.bazel/bin
。如果您是以超級使用者身分執行安裝程式,則會是/usr/local/lib/bazel/bin
。請執行下列任一步驟:
將這個檔案複製到完成目錄 (如果有)。
範例:在 Ubuntu 上,這個目錄為
/etc/bash_completion.d
。或者,從 Bash 的 RC 檔案來源完成檔案。
使用完成檔案的絕對路徑,將類似下方這一行的行程式碼新增至
~/.bashrc
(在 Ubuntu 上) 或~/.bash_profile
(在 macOS 上):source /path/to/bazel-complete.bash
透過啟動,然後:
建構完成指令碼:
bazel build //scripts:bazel-complete.bash
完成檔案會在
bazel-bin/scripts/bazel-complete.bash
下建構。請執行下列任一步驟:
如果您有完成目錄,請將這個檔案複製到該目錄。
範例:在 Ubuntu 上,這個目錄是
/etc/bash_completion.d
將檔案複製到本機磁碟的某處 (例如
$HOME
),然後從 Bash 的 RC 檔案來源完成檔案。使用完成檔案的絕對路徑,在
~/.bashrc
(Ubuntu 上) 或~/.bash_profile
(macOS 上) 中加入類似下方的行:source /path/to/bazel-complete.bash
Zsh
Bazel 隨附 Zsh 完成指令碼。
如果您已安裝 Bazel:
從 APT 存放區完成後,您就完成了 - Zsh 完成指令碼已在
/usr/share/zsh/vendor-completions
中安裝。如果您有經過大量自訂的
.zshrc
,且自動完成功能無法運作,請嘗試下列其中一種解決方案:請將以下內容新增至
.zshrc
:zstyle :compinstall filename '/home/tradical/.zshrc' autoload -Uz compinit compinit
或
請按照這篇文章中的指示操作
如果您使用的是
oh-my-zsh
,建議您安裝並啟用zsh-autocomplete
外掛程式。如果不想這樣做,請使用上述任一解決方案。從 Homebrew 開始,您就完成了 - Zsh 完成指令碼已在
$(brew --prefix)/share/zsh/site-functions
中安裝。從 GitHub 下載的工具程式:
找出完成檔案的絕對路徑。安裝程式會將其複製到
bin
目錄。範例:如果您使用
--user
執行安裝程式,則會是$HOME/.bazel/bin
。如果您是以超級使用者身分執行安裝程式,則會是/usr/local/lib/bazel/bin
。將以下指令碼新增至
$fpath
的目錄:fpath[1,0]=~/.zsh/completion/ mkdir -p ~/.zsh/completion/ cp /path/from/above/step/_bazel ~/.zsh/completion
您可能需要第一次呼叫
rm -f ~/.zcompdump; compinit
才能運作。您也可以視需要將下列內容加入 .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