Autocompletion
Enabling autocomplete for the appcfg
tool is recommended, as it will speed up your workflow. It provides assistance filling out commands and is able to automatically display available apps, configurations, and other information from your environment.
The appcfg completion
command can generate the autocompletion script for the most common shells (bash
(unix default / WSL for Windows), fish
, powershell
(Windows), zsh
(default on Mac)).
Linux / Windows Susbystem for Linux
You can run appcfg completion bash -h
to get instructions for enabling autocompletion. For convenience, the instructions are provided here as well:
Install the bash-completion
package if it is not already installed
dpkg -l | grep bash-completion
If you see something similar to ii bash-completion 1:2.11-8
, it is installed.
Otherwise, you will need to install it:
sudo apt-get install bash-completion
To load completions in your current shell session:
source <(appcfg completion bash)
To load completions for every new session, execute once:
appcfg completion bash | sudo tee /etc/bash_completion.d/appcfg
You will need to start a new shell for this setup to take effect.
You can test your autocompletion by typing appcfg
in your terminal and hitting tab. Note that in bash, completion will sound the terminal bell if the completion is ambiguous (i.e. there are multiple completion options), but hitting tab again will display the appcfg options.
If you like, you can configure bash completion to display all options if there is ambiguity. Note that this will affect your shell behavior outside of appcfg
as well. The changes below can be deleted to restore the original behavior. After making either these changes, you will need to start a new shell session to have the new configuration.
# replace nano with your preferred editor, if desired
nano ~/.inputrc
set show-all-if-ambiguous on
set completion-ignore-case on
Windows
You can run appcfg completion powershell -h
to get instructions for enabling autocompletion. For convenience, the instructions are provided here as well:
To load completions in your current powershell session:
appcfg completion powershell | Out-String | Invoke-Expression
To load completions for every new session, execute once:
appcfg completion powershell >> $PROFILE
You will need to start a new shell for this setup to take effect.
Alternatively, you can reload your profile:
.$PROFILE
You can test your autocompletion by typing appcfg
in your terminal and hitting tab.
macOS / Linux with zsh
You can run appcfg completion zsh -h
to get instructions for enabling autocompletion. For convenience, the instructions are provided here as well:
If shell completion is not already enabled in your environment you will need to enable it. You can execute the following once:
echo "autoload -U compinit; compinit" >> ~/.zshrc
To load completions in your current shell session:
source <(appcfg completion zsh)
To load completions for every new session, execute once:
Linux:
appcfg completion zsh > "${fpath[1]}/_appcfg"
macOS:
appcfg completion zsh > $(brew --prefix)/share/zsh/site-functions/_appcfg
You will need to start a new shell for this setup to take effect.