mirror of
https://github.com/radareorg/radare2.git
synced 2024-11-23 21:29:49 +00:00
193 lines
3.3 KiB
Bash
193 lines
3.3 KiB
Bash
#!/bin/bash
|
|
|
|
if [ -z "$BASH" ]; then
|
|
autoload bashcompinit
|
|
bashcompinit
|
|
fi
|
|
|
|
_r2 () {
|
|
local cur
|
|
COMPREPLY=()
|
|
cur=${COMP_WORDS[COMP_CWORD]}
|
|
prv=${COMP_WORDS[COMP_CWORD-1]}
|
|
case "$prv" in
|
|
-a)
|
|
COMPREPLY=( $(compgen -W "$(rasm2 -qL)" -- $cur))
|
|
return 0
|
|
;;
|
|
-b)
|
|
COMPREPLY=( $(compgen -W "8 16 32 64" -- $cur ))
|
|
return 0
|
|
;;
|
|
-k)
|
|
COMPREPLY=( $(compgen -W "$(r2 -qc 'e asm.os=?' --)" -- $cur ))
|
|
return 0
|
|
;;
|
|
-e)
|
|
COMPREPLY=( $(compgen -W "$(r2 -qceq --)" -- $cur ))
|
|
return 0
|
|
;;
|
|
-F)
|
|
COMPREPLY=( $(compgen -W "$(rabin2 -qL)" -- $cur ))
|
|
return 0
|
|
;;
|
|
-H)
|
|
COMPREPLY=( $(compgen -W "$(r2 -H |cut -d = -f 1)" -- $cur))
|
|
return 0
|
|
;;
|
|
-p)
|
|
COMPREPLY=( $(compgen -W "$(r2 -p?)" -- $cur ))
|
|
return 0
|
|
;;
|
|
-D)
|
|
COMPREPLY=( $(compgen -W "$(r2 -D?)" -- $cur ))
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
case "$cur" in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-0 -a -A -b -B -c -C -d -D -e -f -F -h -hh -H -i -I -k -l -L -m -M -n -nn -N -o -q -p -P -R -s -S -t -u -v -V -w -z -zz' -- $cur))
|
|
;;
|
|
*)
|
|
COMPREPLY=( $(compgen -f -- $cur))
|
|
;;
|
|
esac
|
|
|
|
return 0
|
|
}
|
|
|
|
complete -F _r2 -o filenames r2
|
|
complete -F _r2 -o filenames radare2
|
|
|
|
_rasm2 () {
|
|
local cur
|
|
COMPREPLY=()
|
|
cur=${COMP_WORDS[COMP_CWORD]}
|
|
prv=${COMP_WORDS[COMP_CWORD-1]}
|
|
case "$prv" in
|
|
-a)
|
|
COMPREPLY=( $(compgen -W "$(rasm2 -qL)" -- $cur))
|
|
return 0
|
|
;;
|
|
-b)
|
|
COMPREPLY=( $(compgen -W "8 16 32 64" -- $cur ))
|
|
return 0
|
|
;;
|
|
-c)
|
|
# TODO. grab -a and get asm.cpu=? output
|
|
return 0
|
|
;;
|
|
-k)
|
|
COMPREPLY=( $(compgen -W "$(r2 -qc 'e asm.os=?' --)" -- $cur ))
|
|
return 0
|
|
;;
|
|
-s)
|
|
COMPREPLY=( $(compgen -W "$(rasm2 -s?)" -- $cur ))
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
case "$cur" in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-a -A -b -c -C -d -D -e -E -f -F -h -i -k-l -L -o -O -s -B -v -w -q' -- $cur))
|
|
;;
|
|
*)
|
|
COMPREPLY=( $(compgen -f -- $cur))
|
|
;;
|
|
esac
|
|
|
|
return 0
|
|
}
|
|
|
|
complete -F _rasm2 -o filenames rasm2
|
|
|
|
_rabin2 () {
|
|
local cur
|
|
COMPREPLY=()
|
|
cur=${COMP_WORDS[COMP_CWORD]}
|
|
prv=${COMP_WORDS[COMP_CWORD-1]}
|
|
case "$prv" in
|
|
-a)
|
|
COMPREPLY=( $(compgen -W "$(rasm2 -qL)" -- $cur))
|
|
return 0
|
|
;;
|
|
-b)
|
|
COMPREPLY=( $(compgen -W "8 16 32 64" -- $cur ))
|
|
return 0
|
|
;;
|
|
-c)
|
|
# TODO. grab -a and get asm.cpu=? output
|
|
return 0
|
|
;;
|
|
-k)
|
|
COMPREPLY=( $(compgen -W "$(r2 -qc 'e asm.os=?' --)" -- $cur ))
|
|
return 0
|
|
;;
|
|
-s)
|
|
COMPREPLY=( $(compgen -W "$(r2 -qc 'e asm.syntax=?' --)" -- $cur ))
|
|
return 0
|
|
;;
|
|
esac
|
|
|
|
case "$cur" in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-a -A -b -c -C -d -D -e -E -f -F -h -i -k-l -L -o -O -s -B -v -w -q' -- $cur))
|
|
;;
|
|
*)
|
|
COMPREPLY=( $(compgen -f -- $cur))
|
|
;;
|
|
esac
|
|
|
|
return 0
|
|
}
|
|
|
|
complete -F _rabin2 -o filenames rabin2
|
|
|
|
_rafind2 () {
|
|
local cur
|
|
COMPREPLY=()
|
|
cur=${COMP_WORDS[COMP_CWORD]}
|
|
case "$cur" in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-a -b -e -f -h -m -M -n -r -s -S -t -v -x -X -z -Z' -- $cur))
|
|
;;
|
|
*)
|
|
COMPREPLY=( $(compgen -f -- $cur))
|
|
;;
|
|
esac
|
|
|
|
return 0
|
|
}
|
|
|
|
complete -F _rafind2 -o filenames rafind2
|
|
|
|
_radiff2() {
|
|
local cur
|
|
COMPREPLY=()
|
|
cur=${COMP_WORDS[COMP_CWORD]}
|
|
prv=${COMP_WORDS[COMP_CWORD-1]}
|
|
case "$prv" in
|
|
-a)
|
|
COMPREPLY=( $(compgen -W "$(rasm2 -qL)" -- $cur))
|
|
return 0
|
|
;;
|
|
-b)
|
|
COMPREPLY=( $(compgen -W "8 16 32 64" -- $cur ))
|
|
return 0
|
|
;;
|
|
esac
|
|
case "$cur" in
|
|
-*)
|
|
COMPREPLY=( $( compgen -W '-a -A -AA -AAA -b -c -C -d -D -g -j -n -O -p -r -s -ss -S -t -x -v -V' -- $cur))
|
|
;;
|
|
*)
|
|
COMPREPLY=( $(compgen -f -- $cur))
|
|
;;
|
|
esac
|
|
|
|
return 0
|
|
}
|
|
|
|
complete -F _radiff2 -o filenames radiff2
|