80 lines
1.3 KiB
Plaintext
80 lines
1.3 KiB
Plaintext
_sfdisk_module()
|
|
{
|
|
local cur prev OPTS
|
|
COMPREPLY=()
|
|
cur="${COMP_WORDS[COMP_CWORD]}"
|
|
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
|
case $prev in
|
|
'-u'|'--unit')
|
|
COMPREPLY=( $(compgen -W "S C B M" -- $cur) )
|
|
return 0
|
|
;;
|
|
'-n'|'-C'|'--cylinders'|'-H'|'--heads'|'-S'|'--sectors')
|
|
COMPREPLY=( $(compgen -W "number" -- $cur) )
|
|
return 0
|
|
;;
|
|
'-O'|'-I')
|
|
local IFS=$'\n'
|
|
compopt -o filenames
|
|
COMPREPLY=( $(compgen -f -- $cur) )
|
|
return 0
|
|
;;
|
|
'-h'|'--help'|'-v'|'--version')
|
|
return 0
|
|
;;
|
|
esac
|
|
case $cur in
|
|
'=')
|
|
cur=${cur#=}
|
|
;;
|
|
-*)
|
|
OPTS="--show-size
|
|
--id
|
|
--change-id
|
|
--print-id
|
|
--list
|
|
--dump
|
|
--increment
|
|
--unit
|
|
--one-only
|
|
--list-types
|
|
--DOS
|
|
--DOS-extended
|
|
--re-read
|
|
-N
|
|
-n
|
|
-O
|
|
-I
|
|
--verify
|
|
--version
|
|
--help
|
|
--force
|
|
--no-reread
|
|
--quiet
|
|
--Linux
|
|
--show-geometry
|
|
--show-pt-geometry
|
|
--activate=
|
|
--unhide=
|
|
--show-extended
|
|
--leave-last
|
|
--IBM
|
|
--in-order
|
|
--not-in-order
|
|
--inside-outer
|
|
--not-inside-outer
|
|
--nested
|
|
--chained
|
|
--onesector
|
|
--cylinders
|
|
--heads
|
|
--sectors"
|
|
COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
|
|
return 0
|
|
;;
|
|
esac
|
|
COMPREPLY=( $(compgen -W "$(lsblk -pnro name)" -- $cur) )
|
|
return 0
|
|
}
|
|
complete -F _sfdisk_module sfdisk
|