Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0bd3432c authored by Jim Tang's avatar Jim Tang
Browse files

Adb and fastboot completion supports zsh users.

Builtin command "type" in zsh doesn't support -t option and this
is resolved by checking the shell type prior to sourcing them.
Instead of using "type -t" explicitly, check_type() knows the the
type of the current shell and behaves accordingly.

Bug: 110629292
Test: (zsh) source build/envsetup.sh && lunch aosp_arm
      (bash) source build/envsetup.sh && lunch aosp_arm

Change-Id: Ie39e130e9cc87135cfd522abedba11ad5ac25261
parent 17a02a33
Loading
Loading
Loading
Loading
+5 −5
Original line number Original line Diff line number Diff line
@@ -16,11 +16,11 @@
#
#


_adb() {
_adb() {
    if ! type -t "$1" >/dev/null; then
    if ! check_type "$1" >/dev/null; then
        return
        return
    fi
    fi


    if type -t _init_completion >/dev/null; then
    if check_type _init_completion >/dev/null; then
        _init_completion || return
        _init_completion || return
    fi
    fi


@@ -435,7 +435,7 @@ _adb_util_list_files() {
    fi
    fi


    # Since we're probably doing file completion here, don't add a space after.
    # Since we're probably doing file completion here, don't add a space after.
    if [[ $(type -t compopt) = "builtin" ]]; then
    if [[ $(check_type compopt) == "builtin" ]]; then
        compopt -o nospace
        compopt -o nospace
    fi
    fi


@@ -451,7 +451,7 @@ _adb_util_complete_local_file()
    xspec=$2
    xspec=$2


    # Since we're probably doing file completion here, don't add a space after.
    # Since we're probably doing file completion here, don't add a space after.
    if [[ $(type -t compopt) = "builtin" ]]; then
    if [[ $(check_type compopt) == "builtin" ]]; then
        compopt -o plusdirs
        compopt -o plusdirs
        if [[ "${xspec}" == "" ]]; then
        if [[ "${xspec}" == "" ]]; then
            COMPREPLY=( ${COMPREPLY[@]:-} $(compgen -f -- "${cur}") )
            COMPREPLY=( ${COMPREPLY[@]:-} $(compgen -f -- "${cur}") )
@@ -492,7 +492,7 @@ _adb_util_complete_local_file()
}
}




if [[ $(type -t compopt) = "builtin" ]]; then
if [[ $(check_type compopt) == "builtin" ]]; then
    complete -F _adb adb
    complete -F _adb adb
else
else
    complete -o nospace -F _adb adb
    complete -o nospace -F _adb adb
+4 −4
Original line number Original line Diff line number Diff line
@@ -16,11 +16,11 @@
#
#


_fastboot() {
_fastboot() {
    if ! type -t "$1" >/dev/null; then
    if ! check_type "$1" >/dev/null; then
        return
        return
    fi
    fi


    if type -t _init_completion >/dev/null; then
    if check_type _init_completion >/dev/null; then
        _init_completion || return
        _init_completion || return
    fi
    fi


@@ -135,7 +135,7 @@ _fastboot_util_complete_local_file() {
    xspec=$2
    xspec=$2


    # Since we're probably doing file completion here, don't add a space after.
    # Since we're probably doing file completion here, don't add a space after.
    if [[ $(type -t compopt) = "builtin" ]]; then
    if [[ $(check_type compopt) == "builtin" ]]; then
        compopt -o plusdirs
        compopt -o plusdirs
        if [[ "${xspec}" == "" ]]; then
        if [[ "${xspec}" == "" ]]; then
            COMPREPLY=( ${COMPREPLY[@]:-} $(compgen -f -- "${cur}") )
            COMPREPLY=( ${COMPREPLY[@]:-} $(compgen -f -- "${cur}") )
@@ -175,7 +175,7 @@ _fastboot_util_complete_local_file() {
    fi
    fi
}
}


if [[ $(type -t compopt) = "builtin" ]]; then
if [[ $(check_type compopt) == "builtin" ]]; then
    complete -F _fastboot fastboot
    complete -F _fastboot fastboot
else
else
    complete -o nospace -F _fastboot fastboot
    complete -o nospace -F _fastboot fastboot