Both the zsh and fish completions depend on python3.
When the completitions kick in with those shells where no python3 is
found it throws errors.
Check python3 is installed, otherwise return no completitions to avoid
throwing errors
Co-authored-by: Andrew Davis <adavis@adavis.net>
In https://github.com/fish-shell/fish-shell/issues/10599, a user of an older version of fish has run into an issue with the fastfetch completion requiring a relatively new version.
Rewrite the (really quite clever) embedded Python into a straight pipe, dropping the string transformation entirely. Does require some escaping of quotes to support Python < 3.12.
Shebangs are only used for scripts that are intended to be executed, but
completions are meant to be sourced by the shell, and so shebangs are
not required.
I've also renamed the completions so that editors can continue to detect
the correct file format.