bash-completion: Add fallback for symlinks/images
For commands which support operating on files (i.e. disk images), it is desirable for bash-completion to complete matching file names. It is also desirable to complete on block device symlinks (e.g. under /dev/disk). To complete common use cases, often on canonical device names, continue to try completion using canonical device names, then fall back to matching any file incrementally as Bash does by default.[1] [1]: https://github.com/karelzak/util-linux/issues/842#issuecomment-523450243 Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
This commit is contained in:
parent
559888c873
commit
6ead91ce1e
|
@ -23,6 +23,7 @@ _cfdisk_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -91,6 +91,7 @@ _fdisk_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -32,6 +32,7 @@ _fsck_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -25,6 +25,7 @@ _fsck.cramfs_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -10,6 +10,7 @@ _fsck.minix_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ _mkfs_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ _mkfs.bfs_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -36,6 +36,7 @@ _mkfs.cramfs_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -26,6 +26,7 @@ _mkfs.minix_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -32,6 +32,7 @@ _mkswap_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -59,6 +59,7 @@ _partx_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ _sfdisk_module()
|
|||
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
||||
case $prev in
|
||||
'-d'|'--dump'|'-J'|'--json'|'-l'|'--list'|'-F'|'--list-free'|'-r'|'--reorder'|'-s'|'--show-size'|'-V'|'--verify'|'-A'|'--activate'|'--delete')
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -dpnro name)" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
|
@ -90,6 +91,7 @@ _sfdisk_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -54,6 +54,7 @@ _wipefs_module()
|
|||
return 0
|
||||
;;
|
||||
esac
|
||||
compopt -o bashdefault -o default
|
||||
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
||||
return 0
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue