Skip to content

Shell completion

Press Tab for command, option, dependency and path suggestions in ncc, cncc and pyncc.

Setup

ncc --install-autocomplete

Open a new shell afterwards. To choose a shell explicitly, append bash, zsh, fish or powershell, e.g. ncc --install-autocomplete fish.

Remove

ncc --uninstall-autocomplete

If you chose a shell during setup, append the same name here.

What is being installed

Registers all three commands for the selected shell and prints the paths written:

Shell Written to
bash $XDG_DATA_HOME/bash-completion/completions/
zsh $XDG_DATA_HOME/zsh/site-functions/
fish $XDG_CONFIG_HOME/fish/completions/
PowerShell A fenced block appended to $PROFILE

XDG_DATA_HOME defaults to ~/.local/share and XDG_CONFIG_HOME to ~/.config. Uninstall removes only marked files or the managed PowerShell block.

zsh needs the directory on fpath

If zsh completion does not work after setup, add to ~/.zshrc:

fpath+=("${XDG_DATA_HOME:-$HOME/.local/share}/zsh/site-functions")
autoload -Uz compinit && compinit

Re-register after an upgrade

Re-run your install command after upgrading o6-ncc.

System-wide and user installs

Bash (with bash-completion) and fish may discover the packaged completion files automatically. Venv and pipx installs need the setup command above.

What completes

Argument Completes to
<input> .xml files and directories
Options Flags after the input, or whenever you type -; used non-repeatable options are hidden
-e (o6\Python) Bundled runtime dependency names; XML paths after =
-e (open62541) Pinned shortnames followed by =; XML paths after =
--description-cache .json files and directories
--shortname Pinned shortnames; type custom names explicitly
-o, -b, -i, -t, --bsd Any path

cncc and pyncc offer the same completions as ncc c and ncc python. For ncc c datatypes, use --help or the datatype reference; its arguments do not complete.