Skip to content

Shell completions

If you have Tuist globally installed (e.g., via Homebrew), you can install shell completions for Bash and Zsh to autocomplete commands and options.

If you have oh-my-zsh installed, you already have a directory of automatically loading completion scripts — .oh-my-zsh/completions. Copy your new completion script to a new file in that directory called _tuist:

Terminal window
tuist --generate-completion-script > ~/.oh-my-zsh/completions/_tuist

Without oh-my-zsh, you’ll need to add a path for completion scripts to your function path, and turn on completion script autoloading. First, add these lines to ~/.zshrc:

Terminal window
fpath=(~/.zsh/completion $fpath)
autoload -U compinit
compinit

Next, create a directory at ~/.zsh/completion and copy the completion script to the new directory, again into a file called _tuist.

Terminal window
tuist --generate-completion-script > ~/.zsh/completion/_tuist

If you have bash-completion installed, you can just copy your new completion script to file /usr/local/etc/bash_completion.d/_tuist:

Terminal window
tuist --generate-completion-script > /usr/local/etc/bash_completion.d/_tuist

Without bash-completion, you’ll need to source the completion script directly. Copy it to a directory such as ~/.bash_completions/, and then add the following line to ~/.bash_profile or ~/.bashrc:

Terminal window
source ~/.bash_completions/example.bash

If you use fish shell, you can copy your new completion script to ~/.config/fish/completions/tuist.fish:

Terminal window
mkdir -p ~/.config/fish/completions
tuist --generate-completion-script > ~/.config/fish/completions/tuist.fish