COMMAND REFERENCE

fxcss completions

bash
eval "$(fxcss completions bash)"     # add to ~/.bashrc
eval "$(fxcss completions zsh)"      # add to ~/.zshrc
fxcss completions fish | source      # add to config.fish

Tab-completes subcommands, the flags each one takes, --firefox channel names — and, reading the theme in front of it, the names of its optional stylesheets:

console
$ fxcss install ~/src/whitesur --with theme-mat<TAB>
theme-material-ocean  theme-material-palenight

Comma-separated lists complete element by element, and values already chosen are not offered twice. The candidates are read off the real argument parser, so a command or flag becomes completable the moment it exists rather than when someone remembers to update a shell script. Completion never touches the network: sheet names for a remote owner/repo are not known locally, and a Tab that pauses to talk to GitHub would be worse than no completion at all — the picker during install covers that case instead.