Estoy tratando de implementar una finalización de bash personalizada como se describe aquí . Sin embargo, parece que compgen
es entre mayúsculas y minúsculas . ¿Hay alguna manera de convertirlo en mayúsculas y minúsculas en ese contexto?
Estoy tratando de implementar una finalización de bash personalizada como se describe aquí . Sin embargo, parece que compgen
es entre mayúsculas y minúsculas . ¿Hay alguna manera de convertirlo en mayúsculas y minúsculas en ese contexto?
Respuestas:
Modificaría el ejemplo del enlace que mencionó en algo como esto:
_foo()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD],,}" # this downcases the result
prev="${COMP_WORDS[COMP_CWORD-1],,}" # here too
opts="--help --verbose --version"
if [[ ${cur} == -* ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
fi
}
complete -F _foo foo
Para obtener más información, consulte la documentación de bash o el sitio de hackers de bash .
opts
todo es minúscula. Si lo fuera--help --verbose --VERSION
, nunca podría completar el tercer caso.