compdef _hx hx # Zsh completion script for Helix editor _hx() { _arguments -C \ "-h[Prints help information]" \ "--help[Prints help information]" \ "-v[Increase logging verbosity]" \ "-vv[Increase logging verbosity]" \ "-vvv[Increase logging verbosity]" \ "-V[Prints version information]" \ "--version[Prints version information]" \ "--tutor[Loads the tutorial]" \ "--health[Checks for errors in editor setup]:language:->health" \ "-g[Fetches or builds tree-sitter grammars]:action:->grammar" \ "--grammar[Fetches or builds tree-sitter grammars]:action:->grammar" \ "--vsplit[Splits all given files vertically]" \ "--hsplit[Splits all given files horizontally]" \ "-c[Specifies a file to use for configuration]" \ "--config[Specifies a file to use for configuration]" \ "-w[Specify initial working directory]" \ "--working-dir[Specify initial working directory]" \ "--log[Specifies a file to use for logging]" \ "*:file:_files" case "$state" in health) local languages=($(hx --health | tail -n '+11' | awk '{print $1}' | sed 's/\x1b\[[0-9;]*m//g;s/[✘✓]//g')) _values 'language' $languages ;; grammar) _values 'action' fetch build ;; esac }