带参数的函数中的bash完整路径
我想写一个小的alias aka函数来快速打开vim会话带参数的函数中的bash完整路径,bash,function,alias,completion,Bash,Function,Alias,Completion,我想写一个小的alias aka函数来快速打开vim会话 vims () { vim -S "${HOME}/Sessions/${1}" } 在进入Vimstab时,如何使bash完成/建议路径中的会话文件?基于pynexj和我的日常使用: _autocomplete() { local cmd=$1 cur=$2 pre=$3 from_path=$4 local _cur compreply _cur=$from_path/$cur comprepl
vims () {
vim -S "${HOME}/Sessions/${1}"
}
在进入Vimstab时,如何使bash完成/建议路径中的会话文件?基于pynexj和我的日常使用:
_autocomplete()
{
local cmd=$1 cur=$2 pre=$3 from_path=$4
local _cur compreply
_cur=$from_path/$cur
compreply=( $( compgen -d "$_cur" ) )
COMPREPLY=( ${compreply[@]#$from_path/} )
if [[ ${#COMPREPLY[@]} -eq 1 ]]; then
COMPREPLY[0]=${COMPREPLY[0]}/
fi
}
vims()
{
vim -S ~/Sessions/$1
}
_vims_autocomplete()
{
_autocomplete "$1" "$2" "$3" ~/Sessions
}
complete -F _vims_autocomplete -o nospace vims
# This way allow me to create different alias using the same autocomplete
gogit()
{
cd ~/git/$1
}
_gogit_autocomplete()
{
_autocomplete "$1" "$2" "$3" ~/git
}
complete -F _gogit_autocomplete -o nospace gogit
您可以获得有关complete和教程的更多信息