Skip to content

Shell Autocompletion

You can generate autocompletion shell scripts for bash, elvish, fish, nushell, powershell, and zsh.

zsh

First, ensure that the following is present at the end in your ~/.zshrc file (if not, add it):

autoload -U compinit
compinit -i

Then run:

forge completions zsh | sudo tee /usr/local/share/zsh/site-functions/_forge
cast completions zsh | sudo tee /usr/local/share/zsh/site-functions/_cast
anvil completions zsh | sudo tee /usr/local/share/zsh/site-functions/_anvil

For macOS:

forge completions zsh > /opt/homebrew/share/zsh/site-functions/_forge
cast completions zsh > /opt/homebrew/share/zsh/site-functions/_cast
anvil completions zsh > /opt/homebrew/share/zsh/site-functions/_anvil

fish

mkdir -p $HOME/.config/fish/completions
forge completions fish > $HOME/.config/fish/completions/forge.fish
cast completions fish > $HOME/.config/fish/completions/cast.fish
anvil completions fish > $HOME/.config/fish/completions/anvil.fish
source $HOME/.config/fish/config.fish

bash

mkdir -p $HOME/.local/share/bash-completion/completions
forge completions bash > $HOME/.local/share/bash-completion/completions/forge
cast completions bash > $HOME/.local/share/bash-completion/completions/cast
anvil completions bash > $HOME/.local/share/bash-completion/completions/anvil
exec bash

nushell

mkdir -p $HOME/.config/nushell/completions
forge completions nushell > $HOME/.config/nushell/completions/forge.nu
cast completions nushell > $HOME/.config/nushell/completions/cast.nu
anvil completions nushell > $HOME/.config/nushell/completions/anvil.nu

Then add the following to your config.nu file:

use ~/.config/nushell/completions/forge.nu *
use ~/.config/nushell/completions/cast.nu *
use ~/.config/nushell/completions/anvil.nu *