| #!/bin/bash |
| |
| # Include this script in your shell PATH to enable argument completion for IREE |
| # tools. |
| |
| _iree_tools_autocomplete() { |
| local tool="$1" |
| local commands |
| local cur |
| |
| cur=${COMP_WORDS[COMP_CWORD]} |
| |
| # If the tool is not available yet, avoid noisy shell errors. |
| if ! command -v "$tool" >/dev/null 2>&1; then |
| case "$cur" in |
| -*) |
| COMPREPLY=() |
| ;; |
| *) |
| COMPREPLY=($(compgen -f -- "${cur}")) |
| ;; |
| esac |
| return 0 |
| fi |
| |
| # Get the list of options from the tool's `--help-list`. |
| commands=$("$tool" --help-list 2>/dev/null | awk '{print $1}' | grep -v '^ *=' | sed 's/[=<].*//') |
| |
| case "$cur" in |
| -*) |
| COMPREPLY=($(compgen -W "$commands" -- "${cur}")) |
| ;; |
| *) |
| COMPREPLY=($(compgen -f -- "${cur}")) |
| ;; |
| esac |
| |
| return 0 |
| } |
| |
| complete -F _iree_tools_autocomplete iree-compile |
| complete -F _iree_tools_autocomplete iree-link |
| complete -F _iree_tools_autocomplete iree-opt |