> ## Documentation Index
> Fetch the complete documentation index at: https://docs.suprsend.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Enable Autocompletion

> Generate the autocompletion script for the specified shell

Autocomplete commands and flags with the press of <kbd>tab</kbd> to avoid typos and for ease of use.

## Shell Setup

<Tabs>
  <Tab title="Bash">
    This script depends on the 'bash-completion' package. If it is not installed already, you can install it via your OS's package manager.

    ### Setup completions for current shell session

    To load completions in your current shell session, run:

    ```bash bash theme={"system"}
    source <(suprsend completion bash)
    ```

    ### Persistent setup for all sessions

    Execute once and autocompletion will for apply for all subsequent sessions.

    ```bash bash theme={"system"}

    # Linux
    suprsend completion bash > /etc/bash_completion.d/suprsend

    # macOS
    suprsend completion bash > $(brew --prefix)/etc/bash_completion.d/suprsend
    ```

    You will need to start a new shell for this setup to take effect.

    ```bash bash theme={"system"}
    suprsend completion bash
    ```
  </Tab>

  <Tab title="Zsh">
    If shell completion is not already enabled in your environment you will need to enable it. You can execute the following once:

    ```bash zsh theme={"system"}
    echo "autoload -U compinit; compinit" >> ~/.zshrc
    ```

    ### Setup completions for current shell session

    To load completions in your current shell session, run:

    ```bash zsh theme={"system"}
    source <(suprsend completion zsh)
    ```

    ### Persistent setup for all sessions

    Execute once and autocompletion will for apply for all subsequent sessions.

    ```bash zsh theme={"system"}

    # Linux
    suprsend completion zsh > "${fpath[1]}/_suprsend"

    # macOS
    suprsend completion zsh > $(brew --prefix)/share/zsh/site-functions/_suprsend
    ```

    You will need to start a new shell for this setup to take effect.

    ```bash zsh theme={"system"}
    suprsend completion zsh [flags]
    ```
  </Tab>

  <Tab title="Fish">
    ### Setup completions for current shell session

    ```bash fish theme={"system"}
    suprsend completion fish | source
    ```

    ### Persistent setup for all sessions

    Execute once and autocompletion will for apply for all subsequent sessions.

    ```bash fish theme={"system"}
    suprsend completion fish > ~/.config/fish/completions/suprsend.fish
    ```

    You will need to start a new shell for this setup to take effect.

    ```bash fish theme={"system"}
    suprsend completion fish [flags]
    ```
  </Tab>

  <Tab title="PowerShell">
    ### Setup completions for current shell session

    ```powershell pwsh theme={"system"}
    suprsend completion powershell | Out-String | Invoke-Expression
    ```

    ### Persistent setup for all sessions

    To load completions for every new session, add the output of the above command to your powershell profile.

    ```powershell pwsh theme={"system"}

    suprsend completion powershell >> $PROFILE
    ```

    You will need to start a new shell for this setup to take effect.

    ```powershell pwsh theme={"system"}
    suprsend completion powershell [flags]
    ```
  </Tab>
</Tabs>

***

## Flags

| Flag                | Description                                 |
| ------------------- | ------------------------------------------- |
| `--no-descriptions` | Disable completion descriptions             |
| `-h, --help`        | Show help for the specific shell completion |

## Verify your setup

You can load autocompletion by pressing <kbd>tab</kbd> on your keyboard

```bash theme={"system"}
suprsend <TAB>
suprsend workflow <TAB>
suprsend --<TAB>
```
