# shellcheck shell=dash
___x_cmd_kill___ls(){
    [ $# -gt 0  ]   ||  set -- --auto

    local fmt=auto;

    while [ $# -gt 0 ]; do
        case "$1" in
            -h|--help)      ___x_cmd help -m kill --ls;    return ;;
            -j|--json)     fmt=json   ;;
            -c|--csv)      fmt=csv    ;;
            --auto|--app)  fmt="${1#--}"   ;;
            *)             break      ;;
        esac
        shift
    done

    "___x_cmd_kill___ls___${fmt}" "$@"
}

___x_cmd_kill___ls___auto(){
    if      ___x_cmd_is_stdout2tty; then        ___x_cmd_kill___ls___app
    else                                        ___x_cmd_kill___ls___csv
    fi
}

___x_cmd_kill___ls___csv(){
    local x_
    ___x_cmd os name_
    case "$x_" in
        darwin)     x_=darwin   ;;
        *)          x_=linux    ;;
    esac

    ___x_cmd rat "$___X_CMD_ROOT_MOD/kill/lib/csv/$x_.csv"
}

___x_cmd_kill___ls___json(){
    ___x_cmd_kill___ls___csv | ___x_cmd csv tojson
}

___x_cmd_kill___ls___app(){
    local ___X_CMD_CSV_APP_DATA_num
    local ___X_CMD_CSV_APP_DATA_signal
    local ___X_CMD_CSV_APP_DATA_description

    ___X_CMD_CSV_APP_SHBIN_CODE="xrc kill"                  \
    ___x_cmd csv app    --header num,signal,description     \
                        --clear  --hide_index               \
                        ___x_cmd_kill___ls___csv


    # [ -n "$___X_CMD_CSV_APP_DATA_signal" ] || return 1
    # local signal="$___X_CMD_CSV_APP_DATA_signal"

}