AlaK4X
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


Current Path : /snap/core20/current/usr/share/bash-completion/completions/
Upload File :
Current File : //snap/core20/current/usr/share/bash-completion/completions/function

# 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