您可以在 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
。如果您以 root 身份运行安装程序,则此值将为/usr/local/lib/bazel/bin
。执行以下其中一项操作:
将此文件复制到您的完成目录(如果有)。
示例:在 Ubuntu 上,这是
/etc/bash_completion.d
目录。或者从 Bash 的 RC 文件中获取补全文件。
将类似下面的一行代码添加到
~/.bashrc
(在 Ubuntu 上)或~/.bash_profile
(在 macOS 上),使用补全文件的绝对路径:source /path/to/bazel-complete.bash
通过引导,然后:
将补全脚本输出到文件:
bazel help completion bash > 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
。如果您以 root 身份运行安装程序,则此值将为/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