EVERYTHING FROM THE OTHER REPO
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
_mount_module()
|
||||
{
|
||||
local cur prev OPTS
|
||||
COMPREPLY=()
|
||||
cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
||||
case $prev in
|
||||
'-t'|'--types')
|
||||
local prefix realcur TYPES
|
||||
TYPES="
|
||||
$(\ls /lib/modules/$(uname -r)/kernel/fs | awk '{print $1, "no" $1}')
|
||||
$(awk '{print $NF, "no" $NF}' /proc/filesystems)
|
||||
"
|
||||
realcur="${cur##*,}"
|
||||
prefix="${cur%$realcur}"
|
||||
for WORD in $TYPES; do
|
||||
if ! [[ $prefix == *"$WORD"* ]]; then
|
||||
TYPE_COLS="$WORD ${TYPE_COLS:-""}"
|
||||
fi
|
||||
done
|
||||
compopt -o nospace
|
||||
COMPREPLY=( $(compgen -P "$prefix" -W "$TYPE_COLS" -S ',' -- $realcur) )
|
||||
return 0
|
||||
;;
|
||||
'-L'|'--label')
|
||||
local LABELS
|
||||
LABELS="$(lsblk -o LABEL -nr)"
|
||||
COMPREPLY=( $(compgen -W "$LABELS" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
'-U'|'--uuid')
|
||||
local UUIDS
|
||||
UUIDS="$(lsblk -o UUID -nr)"
|
||||
COMPREPLY=( $(compgen -W "$UUIDS" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
'-N'|'--namespace')
|
||||
local NAMESPACE
|
||||
NAMESPACE="$(lsns --type mnt --output PATH --noheadings)"
|
||||
COMPREPLY=( $(compgen -W "$NAMESPACE" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
'--options-mode')
|
||||
COMPREPLY=( $(compgen -W "ignore append prepend replace" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
'--options-source')
|
||||
COMPREPLY=( $(compgen -W "fstab mtab disable" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
'-h'|'--help'|'-V'|'--version')
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
case $cur in
|
||||
-*)
|
||||
OPTS=" --all
|
||||
--no-canonicalize
|
||||
--fake
|
||||
--fork
|
||||
--fstab
|
||||
--help
|
||||
--internal-only
|
||||
--show-labels
|
||||
--no-mtab
|
||||
--options
|
||||
--options-mode
|
||||
--options-source
|
||||
--options-source-force
|
||||
--test-opts
|
||||
--read-only
|
||||
--types
|
||||
--source
|
||||
--target
|
||||
--verbose
|
||||
--version
|
||||
--read-write
|
||||
--namespace
|
||||
--label
|
||||
--uuid
|
||||
--bind
|
||||
--move
|
||||
--rbind
|
||||
--make-shared
|
||||
--make-slave
|
||||
--make-private
|
||||
--make-unbindable
|
||||
--make-rshared
|
||||
--make-rslave
|
||||
--make-rprivate
|
||||
--make-runbindable
|
||||
--mkdir"
|
||||
COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
local IFS=$'\n'
|
||||
compopt -o filenames
|
||||
COMPREPLY=( $(compgen -f -- $cur) )
|
||||
return 0
|
||||
}
|
||||
complete -F _mount_module mount
|
||||
Reference in New Issue
Block a user