feat: add completion script for bash
This commit is contained in:
parent
e1465ebe67
commit
b3422db063
1 changed files with 36 additions and 0 deletions
36
misc/igmpgen_completion.sh
Normal file
36
misc/igmpgen_completion.sh
Normal file
|
@ -0,0 +1,36 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Function for autocompletion
|
||||
_igmpgen_completion() {
|
||||
local cur prev opts igmp_types
|
||||
COMPREPLY=() # Array variable storing the completions.
|
||||
cur="${COMP_WORDS[COMP_CWORD]}" # Current word being completed.
|
||||
prev="${COMP_WORDS[COMP_CWORD-1]}" # Previous word.
|
||||
|
||||
# Options for igmpgen
|
||||
opts="-i -t -g -s -d -n"
|
||||
|
||||
# Available IGMP packet types
|
||||
igmp_types="1.query 1.report 1.dvmrp 2.query 2.report 2.leave 3.report"
|
||||
|
||||
case "${prev}" in
|
||||
-t)
|
||||
COMPREPLY=( $(compgen -W "${igmp_types}" -- ${cur}) )
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
|
||||
# If the previous word is an option requiring an argument, don't complete with options
|
||||
case "${prev}" in
|
||||
-i | -g | -s | -d | -n)
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
|
||||
# Default completion: suggest igmpgen options
|
||||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
|
||||
}
|
||||
|
||||
# Attach the completion function to igmpgen command
|
||||
complete -F _igmpgen_completion igmpgen
|
||||
|
Loading…
Reference in a new issue