Linux lhjmq-records 5.15.0-118-generic #128-Ubuntu SMP Fri Jul 5 09:28:59 UTC 2024 x86_64
Your IP : 3.145.35.234
# bash shell function completion -*- shell-script -*-
_function()
{
local cur prev words cword
_init_completion || return
if [[ $1 == @(declare|typeset) ]]; then
if [[ $cur == [-+]* ]]; then
local opts
opts=( $(_parse_usage "$1") )
# Most options also have a '+' form. We'll exclude the ones that don't with compgen.
opts+=( ${opts[*]/-/+} )
COMPREPLY=( $(compgen -W "${opts[*]}" -X '+[Ffgp]' -- "$cur") )
else
local i=1
while [[ ${words[i]} == [-+]* ]]; do
if [[ ${words[i]} == -*[fF]* ]]; then
COMPREPLY=( $(compgen -A function -- "$cur") )
return
fi
((i++))
done
if [[ $i -gt 1 ]]; then
# There was at least one option and it was not one that limited operations to functions
COMPREPLY=( $(compgen -A variable -- "$cur") )
fi
fi
elif [[ $cword -eq 1 ]]; then
COMPREPLY=( $(compgen -A function -- "$cur") )
else
COMPREPLY=( "() $(type -- ${words[1]} | command sed -e 1,2d)" )
fi
} &&
complete -F _function function declare typeset
# ex: filetype=sh
|