_last_module() | |
{ | |
local cur prev OPTS | |
COMPREPLY=() | |
cur="${COMP_WORDS[COMP_CWORD]}" | |
prev="${COMP_WORDS[COMP_CWORD-1]}" | |
case $prev in | |
'-f'|'--file') | |
local IFS=$'\n' | |
compopt -o filenames | |
COMPREPLY=( $(compgen -f -- $cur) ) | |
return 0 | |
;; | |
'-n'|'--limit') | |
COMPREPLY=( $(compgen -W "number" -- $cur) ) | |
return 0 | |
;; | |
'-s'|'--since'|'-t'|'--until'|'-p'|'--present') | |
COMPREPLY=( $(compgen -W "number" -- $cur) ) | |
return 0 | |
;; | |
'--time-format') | |
COMPREPLY=( $(compgen -W "notime short full iso" -- $cur) ) | |
return 0 | |
;; | |
esac | |
case $cur in | |
-*) | |
OPTS=" | |
--hostlast | |
--dns | |
--file | |
--fulltimes | |
--ip | |
--limit | |
--nohostname | |
--since | |
--until | |
--present | |
--fullnames | |
--system | |
--time-format | |
--help | |
--version | |
" | |
COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) | |
return 0 | |
;; | |
esac | |
COMPREPLY=( $(compgen -u -- $cur) ) | |
return 0 | |
} | |
complete -F _last_module last |